ip tunnel

                                           |
            1.1.1.1               2.2.2.2         |
            +---------+  Public   +---------+     | Private
            | ServerA +-----------+ ServerB +-----+
            +---------+  Network  +---------+     | Network
                                                  |
                                                  | 192.168.1.0/24

實現

通過ip tunnel建立ipip隧道,再通過iptables進行nat,便可以實現。
Step 1. 建立ip隧道
ServerA配置iptunnel,並給tunnel接口配置上ip

#ip tunnel add a2b mode ipip remote 2.2.2.2 local 1.1.1.1

#ifconfig a2b 192.168.2.1 netmask 255.255.255.0

ServerB配置iptunnel,並給tunnel接口配置上ip

#ip tunnel add a2b mode ipip remote 1.1.1.1 local 2.2.2.2

#ifconfig a2b 192.168.2.2 netmask 255.255.255.0

隧道配置完成後,請在ServerA上192.168.2.2,看是否可以ping通,ping通則繼續,ping不通需要再看一下上面的命令執行是否有報錯
Step 2. 添加路由和nat
ServerA上,添加到192.168.1.0/24的路由

#/sbin/route add -net 192.168.1.0/24 gw 192.168.2.2

ServerB上,添加iptables nat,將ServerA過了訪問192.168.1.0/24段的包進行NAT,並開啓ip foward功能

iptables -t nat -A POSTROUTING -s 192.168.2.1 -d 192.168.1.0/24 -j MASQUERADE

sysctl -w net.ipv4.ip_forward=1

sed -i '/net.ipv4.ip_forward/ s/0/1/'  /etc/sysctl.conf



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章