雙網卡網路轉寄

來源:互聯網
上載者:User

現有雙網卡的ubuntu串連內外兩個網

外網網卡eth0, 網段 192.168.63.0

內網網卡eth1, 網段 10.147.9.0

目標,內網其他裝置如10.147.9.70可以訪問外網的裝置如192.168.63.1

首先要設定雙網卡同時使用 

$ sudo vim /etc/network/interfaces

內容如下

auto lo

iface lo inet loopback

iface eth1 inet static
address 10.147.9.250
netmask 255.255.0.0
gateway 10.147.9.1

auto eth1

注,其中外網段似乎是在gnome裡設的,所以沒有提及,具體有待研究。

此時內外網基本聯通

在內網其他裝置如 10.147.9.70上邊增加一條臨時路由,重啟後失效

windows這樣設

route add 192.168.63.0 mask 255.255.255.0 10.147.9.250

如果是永久性設定

route add -p 192.168.63.0 mask 255.255.255.0 10.147.9.250

linux 臨時路由添加

route add -net 192.168.63.0 netmask 255.255.255.0 gateway 10.147.9.250

ubuntu 永久靜態路由添加

$sudo vim /etc/rc.local

route add -net 192.168.63.0 netmask 255.255.255.0 gateway 10.147.9.250

把上面這句加到exit 0 上邊就行

意思是說所有發往192.168.63這個網段的地址全部先發往10.147.9.250

而不是系統原來的預設閘道10.147.9.1


從10.147.9.70 ping 10.147.9.250 通

從10.147.9.70 ping 192.168.63.50 (同一裝置的外網卡地址) 通

從10.147.9.70 ping 192.168.63.1 外網網關 不通

從10.147.9.250 ping 10.147.9.70 通

從192.168.63.50 ping 192.168.63.1 通


參考了很多資料, 說iptables可以實驗橋接器或路由的轉寄功能

具體操作如下:

開啟ipv4的轉寄功能

2個地方要改

$ sudo vim /etc/sysctl.conf

把下面這句的#號去掉

#net.ipv4.ip_forward=1

還有

$ sudo vim /proc/sys/net/ipv4/ip_forward

把0改成1

然後運行下列命令iptables --flush
iptables --table nat --flush
iptables --delete-chain
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface eth1 -j ACCEPT

然後測試從10.147.9.70 ping 192.168.63.1通了,慶祝一下
還有個問題,就是關機以後不能儲存設定,就是說再次開機要再次運行上邊4條命令
研究了一下午,終於搞定。
把上邊4條命令加到開機自動啟動並執行指令碼裡面即可。
這也是Ubuntu的小竅門
$sudo vim /etc/rc.local
把上邊四條命令加到
exit 0 上邊就行

短短一篇文章, 好長時間的探索,拿出來跟大家分享,我是從別人那裡學到的經驗,也把經驗分享給更多的人,讓大家少走彎路。

續:
其實這就是個橋接器轉寄的例子
內網與外網通過一個雙網卡的伺服器相連
當內網訪問一個外網的地址是,它把請求發到了網關的內網網卡上,iptablesd再通過另一個串連外網的網卡把這個請求發到對應的外網伺服器上,完成轉寄。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.