1. 程式人生 > >Linux雙網卡搭建NAT服務器之網絡應用

Linux雙網卡搭建NAT服務器之網絡應用

image 轉換成 辦公 acc str border 系統 結構 order

技術分享

一:拓撲、網絡結構介紹

Eth1 外網卡的IP 地址, GW和DNS 按照提供商提供配置。配置如下:

IP:114.242.25.18

NETMASK:255.255.255.0
GW:114.242.25.1

DNS:202106.0.20

DNS:202106.46.151

Linux 主機的 eth0 指向內網, IP 地址為: 172.100.10.1/24 。

Eth 0
IP:172.100.10.1
NETMASK:255.255.255.0

內部辦公區 IP 地址段是 172.100.10.X/24 段的 IP , eth0 的 IP 是所有內網主機的網關,而DNS 設置為 eth1網卡配置 的 DNS,我的內網辦公電腦設置如下:

172.100.10.188
NETMASK:255.255.255.0
GW:172.100.10.1

DNS:202106.0.20

DNS:202106.46.151

二: 配置

1.開啟轉發

以上配置完成後,辦公終端 應該可以ping通Linux系統主機的eth0 的IP,因為他們是通過交換機鏈接的。但是,辦公終端 ping不通Linux系統主機的eth1 的IP,應為並未開啟Linux系統主機的轉發功能。

開啟Linux的轉發功能,執行如下命令:

echo 1 > /proc/sys/net/ipv4/ip_forward

查看系統是否啟用了轉發功能,可以執行如下命令:

cat /proc/sys/net/ipv4/ip_forward

如果結果為1,代表已啟用,0代表未啟用。

開啟轉發後,就能ping 同ETH 1 的IP 地址和網關和DNS。

2.配置NAT規則

經過上面配置後,雖然可以ping相關的IP地址,但是此時linux 服務器是可以上網,但是內網辦公電腦還是無法上網。問題在於內網主機的IP地址是無法在公網上路由。因此我們只需將內網辦公終端 的IP轉換成Linux系統eth1 接口的IP。

3.配置的NAT

/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -t nat -P PREROUTING ACCEPT
/sbin/iptables -t nat -P POSTROUTING ACCEPT
/sbin/iptables -t nat -P OUTPUT ACCEPT

NAT 轉換:

iptables -t nat -A POSTROUTING -s 172.100.10.0/24 -o eth1 -j MASQUERADE

也可以通過使用 SNAT target 實現:

iptables -t nat -A POSTROUTING -s 10.50.10.0/24 -o eth1 -j SNAT --to-source 114.242.25.18

FORWARD 配置規則如下:

iptables -A FORWARD -i eth0 -j ACCEPT

保證所有進入 eth0 的包都被 FORWARD 點 ACCEPT 。

經過以上的配置之後, 內網辦公電腦就可以正常的訪問外網了。

本文出自 “康建華” 博客,請務必保留此出處http://michaelkang.blog.51cto.com/1553154/788472

Linux雙網卡搭建NAT服務器之網絡應用