两台linux服务器上建立ip隧道

 

服务器server的地址192.168.18.251,服务器client的地址192.168.18.252。

建立隧道

在服务器server上执行以下命令:

 
  1. ip tunnel add ethn mode ipip local 192.168.18.251 remote 192.168.18.252

其中,ip tunnel为隧道操作,add ethn为添加隧道(ethn为隧道的虚拟网卡名,可自定义)

mode ipip设置隧道的模式为ipip。除ipip,还有很多其他模式,如gre/sit等等,以ipip和gre最为常见。

local指定本机的地址,remote指定对方的地址。

同样,在服务器client上执行以下命令:

 
  1. ip tunnel add ethm mode ipip local 192.168.18.252 remote 192.168.18.251

ethm为隧道的虚拟网卡名,可自定义。

至此,ip隧道已经建立起来了。

隧道地址

但是要想实现server和client通过ip隧道通信,还需要给server和client的隧道对应的网卡设置一个ip。

在服务器server上执行以下命令:

 
  1. ifconfig ethn 1.1.1.1

在服务器client上执行以下命令:

 
  1. ifconfig ethm 2.2.2.2

这里server和client的隧道网卡的ip可以随便设定。

可以在server和client上分别ifconfig看看,是不是多了ethn/ethm这个网卡。

添加路由

最后一步,设置一下路由规则。

在服务器server上执行以下命令:

 
  1. route add -host 2.2.2.2 dev ethn

让目的ip为2.2.2.2的数据包走ethn这个网卡。

在服务器client上执行以下命令:

 
  1. route add -host 1.1.1.1 dev ethm

让目的ip为1.1.1.1的数据包走ethm这个网卡。

测试隧道

在服务器server上执行以下命令:

 
  1. ping 2.2.2.2

在服务器client上执行以下命令:

 
  1. ping 1.1.1.1

如果可以ping通,说明ip隧道已经成功建立了。

效果下图所示:

两台linux服务器上建立ip隧道

转载自:https://birdteam.net/2017/11/build-ip-tunnel-on-two-linux-servers.html

posted @ 2017-12-27 12:35  叮伱格斐呃  阅读(911)  评论(0编辑  收藏  举报
Live2D