利用NAT代理實現內網訪問外網 服務器
-
背景及原理
若局域網中的兩臺計算機只能有一臺可以訪問外網,而這兩臺計算機之間能相互通訊,那麼能夠配置能訪問外網的那臺服務器實現路由器的功能,即實現其餘機器的NAT轉換,從而使全部機器都能訪問外網 spa
-
環境模擬
在虛擬機中建立兩臺Linux系統(能夠在建立一臺後克隆另外一臺,這樣作能夠加快效率),分別命名爲Linux1和Linux2,其中Linux1具備兩塊網卡eth0(NAT模式)和eth1(僅主機模式) 代理
Linux2具備一塊網卡eth0(僅主機模式),讓Linux1作路由器(服務器),Linux2作客戶機 blog
ip地址分配爲 ip
Linux1:eth0 192.168.214.210(此ip跟VMware的NAT模式同網段,不然做爲服務器端的Linux將沒法訪問外網) 路由
eth1 172.16.6.254(自定義) 虛擬機
Linux2:eth0 172.16.6.100(自定義) table
環境模擬步驟: class
2.1 對於Linux1服務器端 效率
2.1.1 vi /etc/sysconfig/network-scripts/ifcfg-eth0修改網卡配置文件,同時將ip改成靜態ip:192.168.214.210,網關192.168.214.2
2.1.2 進入到/etc/sysconfig/network-scripts/目錄,建立網卡eth1的配置文件,能夠經過複製網卡eth0的配置文件cp ifcfg-eth0 ifcfg-eth1再進行配置,只需配置靜態ip爲172.16.6.254(即Linux2的網關)
2.1.3 執行命令>/etc/udev/rules.d/70-persistent-net.rules清空網卡信息相關文件
2.1.4 重啓系統並查看ip
2.2 對於Linux2客戶端
2.2.1 vi /etc/sysconfig/network-scripts/ifcfg-eth0修改網卡配置文件(由於是經過原來的克隆過來的,因此須要刪除網卡的物理地址和UUID),同時將ip地址改成靜態ip:172.16.6.100
2.2.2 執行命令>/etc/udev/rules.d/70-persistent-net.rules清空網卡信息相關文件
2.2.3 重啓系統並查看ip
2.3在Linux1上pingwww.baidu.com –c4
檢驗Linux2與Linux1的通訊,在Linux2上ping 172.16.6.254 –c4,同時ping www.baidu.com,發現能ping通網關(即Linux1),ping不通外網
三、在Linux1上操做
3.1 配置iptable轉發規則執行以下命令
iptables -F #清除全部規則來暫時中止防火牆
iptables -t nat -A POSTROUTING -s 172.16.6.0/24 -j MASQUERADE #進行ip假裝
3.2 調整內核參數,開啓內核ip路由轉發功能
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf
sysctl -p 載入sysctl配置文件
-
在Linux2上從新ping www.baidu.com –c4
此時Linux2能經過Linux1連上外網,大功告成!
博主原創文章,轉載請務必註明出處