首先定义一下什么叫做连接两个局域网 假如一个局域网在192.168.1.0/24 这个段,另外一个局域网在192.168.2.0/24这个段,我们可以在192.168.1.0这个网段里直接访问192.168.2.0里的任何ip,也可以在192.168.2.0里访问任何192.168.1.0里的ip,那么这个就叫做连接两个局域网 如果192.168.1.0和192.168.2.0能够通过第三个网络进行连接,比如互联网,应用场景可能是两个机房,怎么做呢? 1、vpn,这是一个很自然的想法,通过vpn将两边连接起来,但是这需要额外的vpn服务器和客户端软件,比如openvpn 2、如果两个网络都有一个公网ip服务器,那么可以直接通过ip tunnel来解决 方法如下 ip tunnel add mytun modeipip remote 192.168.2.x local 192.168.1.y ip config mytun 10.2.8.1up route add -net 10.2.8.0netmask 255.255.255.0 dev mytun route add -net 192.168.2.0netmask 255.255.255.0 dev mytun 我们来看一下每条命令都是什么意思 ip tunnel add mytun modeipip remote 192.168.2.x local 192.168.1.y 这是指在当前机器上建立一个tunnel,本地ip是192.168.1.y,当有路由请求通过这个tunnel时,发送给远端的192.168.2.x ip config mytun 10.2.8.1up 给这个新建的设备一个ip route add -net 10.2.8.0netmask 255.255.255.0 dev mytun route add -net 192.168.2.0netmask 255.255.255.0 dev mytun 凡是 发给10.2.8.0和192.168.2.0的请求请路由给mytun设备,这样一来就会直接发给192.168.2.x 于是很显然192.168.2.0里也得有一台机器干同样的事情 ip tunnel add mytun modeipip remote 192.168.1.y local 192.168.1.x ip config mytun 10.2.8.2up route add -net 10.2.8.0netmask 255.255.255.0 dev mytun route add -net 192.168.1.0 netmask255.255.255.0 dev mytun ——此文章来自www.togogo.net欢迎转载!
|