0x00 前言

小明是一名双一流带学的学生,有一天他发现自己的服务器ssh连不上了。他找到了舍友小俊,小俊拿出手机打开热点,ssh果然连上了。调试完服务器后,小明越想越不爽:每次调试都得开热点太麻烦了。第二天,小明不满大门口会堵车,当他骑车从隧道飞驰而过时他灵机一动,想到了一个解决方案。

0x01 材料准备

1. 两台运行linux的机器(本文采用centos7
2. 脑子和手

0x02 开始部署

在其中一台执行以下命令,暂且命名1号机(请删除方括号[])

modprobe ipip
ifconfig
ip tun add ipip0 mode ipip remote [2号机公网ip] local [1号机网卡ip(刚才ifconfig已经列出)] ttl 64
ip link set ipip0 up
ip addr add 10.5.5.1 peer 10.5.5.2 dev ipip0
ip route add 10.5.5.0/24 dev ipip0
ping 10.5.5.2 -i 5 &
disown

在另台执行以下命令,暂且命名2号机(请删除方括号[])

modprobe ipip
ifconfig
ip tun add ipip0 mode ipip remote [1号机公网ip] local [2号机网卡ip(刚才ifconfig已经列出)] ttl 64
ip link set ipip0 up
ip addr add 10.5.5.2 peer 10.5.5.1 dev ipip0
ip route add 10.5.5.0/24 dev ipip0
ping 10.5.5.1 -i 5 &
disown

0x03 可能遇到的问题

  1. modprobe报错
    解决方案:内核缺少ipip模块,重新编译内核。
  2. 提示没有tun0设备
    解决方案:输入ip tun查看是否有tun0,若无则重新执行modprobe ipip,问题仍不能解决请重新编译内核。
  3. 做完全部操作仍然不能连接
    解决方案:检查安全组,对ipip进行放行(通常情况本地防火墙与安全组默认放行ipip)