啟用子網之間的路由
我有一個帶有三個 NIC 卡的 Centos 伺服器。
ETH0公網 IP xx.xx.xx.xx1/xx.xx.xx.xx2(有兩個公網IP)
EHT1本地子網 192.168.80.0(DHCP 伺服器監聽此介面)
ETH2本地子網 (10.0.1.10) 連接到列印機/文件伺服器/其他區域網路,只能在組織內部訪問。
我的設置要求:- 在 ETH1(192.168.800/24 子網)上我很少有使用者需要訪問 Internet 和他們的郵件。我們在 192.168.80.0/24 子網內設置了一個郵件伺服器,這樣使用者的郵件訪問速度應該更快。
我已啟用靜態 NAT 到具有公共 IP xx.xx.xx.xx2 的郵件伺服器 192.168.80.2。eth1 上的休息使用者將其公共 IP 視為 xx.xx.xx.xx1,因為我們也為其啟用了 DNAT。
子網 192.168.80.0/24 上的使用者可以訪問文件伺服器/列印機。
我有另一個子網 192.168.70.0/24 需要與 192.168.80.0/24 子網通信,同樣 192.168.80.0.24 需要與 192.168.70.0/24 通信。
192.168.80.0/24 使用 L3 交換機連接到 10.0.0.0/24。192.168.70.0/24 使用 L3 交換機連接到 10.0.0.0/24。
一切正常,但無法從 192.168.80.0/24 到 192.168.70.0.. 進行通信。
每當我從 192.168.80.0/24 到 192.168.70.0/24 網路進行跟踪路由時,它都會進入網際網路。
traceroute 192.168.70.1 * * * 192.168.80.1 * * * ISP default gateway IP
如何為源自子網 192.168.80.0/24 並發往 192.168.70.0/24 的流量啟用轉發或路由應該通過 eth2 (10.0.1.10) 以便上面的 traceroute 應該出現如下所示,其餘應該可以正常工作現在正在工作。
traceroute 192.168.70.1 * * * 192.168.80.1 * * * 10.0.1.10
我不知道現在需要做什麼。
我的 NAT 規則:
-A PREROUTING -d xx.xx.xx.xx2/32 -i eth0 -j DNAT --to-destination 192.168.80.2 -A POSTROUTING -s 192.168.80.2/32 -o eth0 -j SNAT --to-source xx.xx.xx.xx2 -A POSTROUTING -s 192.168.80.0/24 -o eth0 -j SNAT --to-source xx.xx.xx.xx1 -A POSTROUTING -o eth0 -j MASQUERADE
路由:
route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 115.xx.xx.200 0.0.0.0 255.255.255.252 U 0 0 0 eth0 192.168.80.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 10.0.0.0 0.0.0.0 255.255.252.0 U 0 0 0 eth2 115.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 eth0 0.0.0.0 115.xx.xx.137 0.0.0.0 UG 0 0 0 eth0
在某個地方你必須有網關,它連接到 10.0.1.0/24 網路,也連接到 192.168.70.0/24 網路。假設該網關的 IP 地址為 10.0.1.20。
然後你必須在你的 linux 路由器上添加這個路由:
ip ro add 192.168.70.0/24 via 10.0.1.20
因為您的路由器也是 192.168.70.0/24 網路的網關(雖然通過一跳),所以您不需要在網路 192.168.70.0/24 的網關上添加 192.168.80.0/24 的路由
編輯1:
要在 CentOS 上永久設置此路由,您必須將此行添加到
/etc/sysconfig/network-scripts/route-eth2
文件中:192.168.70.0/24 via 10.0.1.20 dev eth2
您可以查看此部署指南。