CentOS 7配置成網關服務器

其實在Linux下配置網關服務器很簡單,若是配置好以後出現沒法訪問外網的狀況,那麼能夠排查如下狀況:服務器

一、防火牆和iptables的服務關掉(firewalld、iptables)spa

二、清空iptables的規則(iptables -F、iptables -X、iptables -F -t nat、iptables -X -t nat)code

三、轉發開啓(/etc/sysctl.conf-> net.ipv4.ip_forward=1)blog

經過以上的配置通常能夠配置成功。ip

下面是實驗環境:table

說明一下,網關能夠兩個網卡,一樣也不必定須要兩個網卡,一張網卡也是能夠的。class

PC1:配置

eth0:192.168.104.12/255.255.255.0/192.168.104.1,DNS:8.8.8.8iptables

PC2:network

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-source 192.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,也就是修改網關地址。

 

總結:

一、其實若是你時間過一張網卡的狀況時,那麼你會發現只要開啓了內核轉發功能以後不須要配置iptables也是能夠行的。

二、當兩張網卡是狀況,實體機,一張鏈接外網,一張內網鏈接交換機,再鏈接多個子PC,此時iptables就是必須的,且SNAT也必須爲外網網卡IP。

相關文章
相關標籤/搜索