標籤:
有三台機器, A 、B 、C,其中A機器有外網和內網IP,B和C只有內網,我們配置B和C二台機器通過A機器來上外網。
假設A機器 外網IP為: 60.12.13.14 內網IP為: 192.168.0.1
B機器IP為: 192.168.0.2
C機器IP為: 192.168.0.3
我們在B和C 二台機器上面,配置網卡設定檔,把A機器作為網關加進去。
修改
- vi /etc/sysconfig/network-scripts/ifcfg-eth1
添加:
- GATEWAY=192.168.0.1
然後重啟二台機器網路
- /etc/init.d/network restart
修改二台機器的DNS設定檔,把A機器一樣的DNS 加進來
- vi /etc/resolv.conf
添加:
- nameserver 202.99.96.68 #DNS根據自己伺服器所在進行相應修改
儲存即可。
我們在A機器上面配置 IPTABLES,添加SNAT
cd /usr/local/sbin/
vi iptables.sh
- #!/bin/sh
- iptables -t nat -I POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 60.12.13.14
- iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
- iptables -A FORWARD -d 192.168.0.0/24 -j ACCEPT
- /etc/init.d/iptables save
運行 指令碼
- sh iptables.sh
這樣iptables.sh指令碼裡面的內容就被儲存到
- /etc/sysconfig/iptables
檔案裡面了。
在A機器上面,把IPTBALS 設定成開機啟動就可以了。
- chkconfig --level 345 iptables on
在A機器上面,開啟IP轉寄功能,修改sysctl.conf檔案。
- vi /etc/sysctl.conf
把
- net.ipv4.ip_forward = 0
修改為:
- net.ipv4.ip_forward = 1
然後執行:
- sysctl -p
使之生效。
一切就緒之後,可以在B和C二台機器上面,訪問外網,比如PING 外部IP和網域名稱都通了。
方便通過YUM更新軟體,下載軟體啦。。
註:
我在操作過程當中,是先拿A和B二台機器操作的,當B可以訪問外網之後,發現通過A機器連不了C機器了,後來一直以為C機器有問題,就沒有做通過B機器去連C機器的嘗試。 之後通知機房重啟,發現還是沒有辦法通過A去連C,之後機房接顯示器通過本地物理機也是沒有辦法A連C,但IDC工程師有嘗試可以通過B來連C,而且都是通的,才發現是因為調整內網上網的事,沒有加網關造成的。 通過B連上C之後,加上網關,重啟網卡,A就可以連C了,而且C也可以上網了。折騰了一會,留個紀念。萬事多嘗試
IDC 內網機器 通 過 iptables SNAT上網的配置方法