CentOS 7配置成閘道器伺服器
阿新 • • 發佈:2019-01-02
其實在Linux下配置閘道器伺服器很簡單,如果配置好之後出現無法訪問外網的情況,那麼可以排查以下情況:
1、防火牆和iptables的服務關掉(firewalld、iptables)
2、清空iptables的規則(iptables -F、iptables -X、iptables -F -t nat、iptables -X -t nat)
3、轉發開啟(/etc/sysctl.conf-> net.ipv4.ip_forward=1)
通過以上的配置一般可以配置成功。
下面是實驗環境:
說明一下,閘道器可以兩個網絡卡,同樣也不一定需要兩個網絡卡,一張網絡卡也是可以的。
PC1:
eth0:192.168.104.12/255.255.255.0/192.168.104.1,DNS:8.8.8.8
PC2:
eth0:192.168.104.13/255.255.255.0/192.168.104.12,DNS:8.8.8.8
下面是實際配置:
PC1:
# 開啟轉發 echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf # 生效 sysctl -p # 配置iptables做SNAT,下面有兩種方式,推薦用第二種,比較清晰 # 1、使用MASQUERADE iptables -t nat -I POSTROUTING -j MASQUERADE# (不需要設定)可以指定哪個網絡卡 iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE # (不需要設定)也可以指定具體的網段做SNAT iptables -t nat -I POSTROUTING -s 192.168.104.0/24 -j MASQUERADE # 2、(推薦這種)指明SNAT的具體IP iptables -t nat -I POSTROUTING -j SNAT --to-source 192.168.104.12 # (不需要設定)可以指定哪個網絡卡 iptables -t nat -I POSTROUTING -o eth0 -j SNAT --to-source192.168.104.12 # (不需要設定)也可以指定具體的網段做SNAT iptables -t nat -I POSTROUTING -s 192.168.104.0/24 -j SNAT --to-source 192.168.104.12
PC2:
此時只需要在/etc/sysconfig/network-script/ifcfg-eth0修改GATEWAY=192.168.104.12,也就是修改閘道器地址。
總結:
1、其實如果你時間過一張網絡卡的情況時,那麼你會發現只要開啟了核心轉發功能之後不需要配置iptables也是可以行的。
2、當兩張網絡卡是情況,實體機,一張連線外網,一張內網連線交換機,再連線多個子PC,此時iptables就是必須的,且SNAT也必須為外網網絡卡IP。