計算機網絡探究一之利用雙網卡主機共享上網
綜述
大家好,這次我們需要實現的是實現雙網卡主機共享上網,就是一臺主機通過連接另一臺可以訪問外網的雙網卡主機來正常上網。所以我們需要兩臺機器來進行測試,在這里我們用的是兩臺 Ubuntu 14.04,其中一臺是單網卡,一臺是雙網卡。廢話不多說,行動起來吧。
配置系統
博主使用了 Vmware 來安裝了兩臺 Ubuntu 主機,一臺當路由機,名稱是 Ubuntu Route,另一臺是客戶機,名稱是 Ubuntu Desktop,具體的網絡配置如下: Ubuntu Route: 一個網卡 eth0 通過 NAT 方式來與外部主機共享上網,這個網卡也就是 VMnet8 網卡,網段是 192.168.231.0 另一個網卡 eth1 連接了一個自定義的僅主機模式的網卡 VMnet2,網段是 192.168.122.0 網絡適配器設置如下,eth0 開啟了 DHCP,ech1 沒有開啟 DHCP Ubuntu Desktop: 一個網卡 eth0 連接剛才那個自定義的僅主機模式的網卡 VMnet2,網段是 192.168.122.0 好了,以上就是基本硬件的配置
設置 IP
接下來我們設置一下 Ubuntu Route 的 IP 地址,修改 /etc/network/interfaces
1
2
3
4
5
6
7
8
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
address 192.168.122.4
netmask 255.255.255.0
在這里,eth0 因為我們在 VMware 里面設置了 DHCP,所以這里我們設置 dhcp 即可,eth1 需要手動配置一下,我們分配了 192.168.122.4 這個 IP 地址,當然你可以隨意指定,子網掩碼如上,不需要寫網關,因為它本身作為一個路由。 可以通過執行如下命令來使之生效
1
sudo /etc/init.d/networking restart
如果上述方法不行,則可以嘗試使用關閉網卡和開啟網卡的命令。
1
2
sudo ifup eth0
sudo ifdown eth0
eth1 的開啟和關閉同上
開啟路由轉發
修改 /etc/sysctl.conf 文件,將
1
net.ipv4.ip_forward=1
這一行取消注釋,代表開啟了路由轉發功能。 也可以通過執行
1
echo 1 > /proc/sys/net/ipv4/ip_forward
命令來實現
設置 iptables 規則
iptables 是非常重要的一個環節,如果大家不熟悉,可以去搜相關資料了解一下。 執行如下命令,來設置一下 iptables 規則,可以直接在命令行逐條執行,也可以寫成一個腳本來執行。
1
2
3
4
5
6
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
其中最后一條是最重要的,代表將數據包通過 eth0 網卡來轉發,也是 IP 偽裝的一個常用方法,有了這條指令,從 eth1 網卡流經的一些數據包可以通過 eth0 來轉發,這樣就相當于連通了兩個網卡,這樣與 eth1 網卡連接的主機便可以上網了。
客戶主機設置
因為客戶機的 eth0 連接了 VMnet2 網卡,而 VMnet2 網卡又與路由主機的 eth1 連接,我們只需要簡單設置一下 IP 地址就好了。 修改 /etc/network/interfaces
1
2
3
4
5
6
auto eth0
iface eth0 inet static
address 192.168.122.5
netmask 255.255.255.0
gateway 192.168.122.4
dns-nameservers 119.29.29.29
這里很重要的一個設置就是網關,設置成路由主機的 IP 地址。 設置完了同樣重啟一下網卡使其生效。 還可以選擇性設置下 DNS 服務器。 至此,所有配置都完成了,測試一下吧。
測試
我們在客戶機里打開瀏覽器,輸入隨意一個網頁測試一下。 嗯,客戶機可以正常上網啦,一切都是那么輕松加愉快! 如有問題,歡迎留言交流~
NAT 網絡
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。