節(jié)點名稱 | IP地址 | 子網掩碼 | 備注 |
---|---|---|---|
client | 10.0.0.101 | 255.255.0.0 | client的外網網卡 |
172.16.2.101 | 255.255.255.0 | client的內網網卡 | |
Server2 | 172.16.2.11 | 255.255.255.0 | 172.16.2.0/24網段的某臺服務器 |
Server3 | 172.16.3.11 | 255.255.255.0 | 172.16.3.0/24網段的某臺服務器 |
Server4 | 172.16.4.11 | 255.255.255.0 | 172.16.4.0/24網段的某臺服務器 |
內網路由器 | 172.16.2.254 | 255.255.255.0 | 172.16.2.0/24的網關 |
172.16.3.254 | 255.255.255.0 | 172.16.3.0/24的網關 | |
172.16.4.254 | 255.255.255.0 | 172.16.4.0/24的網關 |
虛機網卡類型
網絡名稱 | VMware網卡類型 | 網絡范圍 |
---|---|---|
運營商網絡 | 橋接 | 10.0.0.0/16 |
VMnet2 | 僅主機 | 172.16.2.0/24 |
VMnet3 | 僅主機 | 172.16.3.0/24 |
VMnet4 | 僅主機 | 172.16.4.0/24 |
內網路由器如何實現呢?
VMnet2、VMnet3、VMnet4均為僅主機模式,那么常規(guī)情況下,只有其網絡內的各計算機之間才可以通信,要怎樣才能實現三個網絡間的通信呢?
答案是使用華為eNSP模擬器中的Cloud。使用Cloud設備可以將eNSP中的路由器和VMware虛擬機的網卡連接起來。
配置內網環(huán)境
配置eNSP的路由器
接口 | IP地址 | 子網掩碼 |
---|---|---|
G0/0/0 | 172.16.2.254 | 255.255.255.0 |
G0/0/1 | 172.16.3.254 | 255.255.255.0 |
G0/0/2 | 172.16.4.254 | 255.255.255.0 |
<huawei>system-view [huawei]int g0/0/0 [Huawei-GigabitEthernet0/0/0]ip address 172.16.2.254 255.255.255.0 [Huawei-GigabitEthernet0/0/0]quit [huawei]int g0/0/1 [Huawei-GigabitEthernet0/0/1]ip address 172.16.3.254 255.255.255.0 [Huawei-GigabitEthernet0/0/1]quit [huawei]int g0/0/2 [Huawei-GigabitEthernet0/0/2]ip address 172.16.4.254 255.255.255.0 [Huawei-GigabitEthernet0/0/2]quit [huawei]
修改虛機的IP地址
client
網卡名稱 | IP地址 | 子網掩碼 | 默認網關 | 備注 |
---|---|---|---|---|
ens33 | 10.0.0.101 | 255.255.0.0 | 10.0.0.1 | 外網網卡 |
ens37 | 172.16.2.101 | 255.255.255.0 | 內網網卡 |
server2
網卡名稱 | IP地址 | 子網掩碼 | 默認網關 | 備注 |
---|---|---|---|---|
ens33 | 172.16.2.11 | 255.255.255.0 | 172.16.2.254 |
server3
網卡名稱 | IP地址 | 子網掩碼 | 默認網關 | 備注 |
---|---|---|---|---|
ens33 | 172.16.3.11 | 255.255.255.0 | 172.16.3.254 |
server4
網卡名稱 | IP地址 | 子網掩碼 | 默認網關 | 備注 |
---|---|---|---|---|
ens33 | 172.16.4.11 | 255.255.255.0 | 172.16.4.254 |
在server上搭建HTTP服務
以server2
為例:
使用Python創(chuàng)建一個簡單的HTTP服務
cd ~ echo "server2" > index.html python -m SimpleHTTPServer 8080
對照試驗
在client
上訪問外網
ping www.baidu.com -c 4
在client
上訪問server2
ping 172.16.2.11 -c 4
在client
上訪問server3
ping 172.16.3.11 -c 4
在client
上訪問server4
ping 172.16.4.11 -c 4
在對照試驗中可以看到,在client
將默認網關配置在外網網卡的情況下,雙網卡的client
可以正常訪問外網和內網的172.16.2.0/24
部分,而172.16.3.0/24
和172.16.4.0/24
是不能訪問到的。
為什么client
能訪問172.16.2.0/24
網絡,而不能訪問172.16.0.0/16
的其余網絡呢?
因為client
位于172.16.2.0/24
網絡內,在網絡內進行通信,數據包不用發(fā)送至其他網絡,當然默認網關也就不起作用了。
而當client
與172.16.0.0/16
的其余網絡通信時,client
的路由表沒有記載發(fā)往目的地址的路徑,所以client
只能傻傻的把數據包發(fā)送給默認網關,從此數據包和真正的目的地址就“南轅北轍”了。當然ping的結果就是網絡不可達。
路由配置
在client
上查看路由表
route
在client
上添加路由
route add -net 172.16.0.0/16 gw 172.16.2.254
永久配置,則在/etc/rc.local
里添加路由信息
route add -net 172.16.0.0/16 gw 172.16.2.254
查看路由表
route
實驗結果
檢測連通性
ping www.baidu.com -c 4
ping 172.16.2.11 -c 4
ping 172.16.3.11 -c 4
ping 172.16.4.11 -c 4
訪問內外網資源
curl http://www.baidu.com/
curl http://172.16.2.11:8080/index.html
curl http://172.16.3.11:8080/index.html
curl http://172.16.4.11:8080/index.html
解決的辦法很簡單,就是1條命令而已。
但是蘊藏在這條命令背后的原理、概念、理論,則需要我們進行深究!
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。