首頁 > 軟體

基於VMware模擬實現遠端主機網路通訊

2020-06-16 17:03:41

基於VMware模擬實現遠端主機網路通訊

目的:

基於VMware軟體,模擬實現不同網段的兩主機,通過路由器進行通訊。兩主機host A和host B分別處於VMnet6網路和VMnet7網路,都屬於端系統,不能直接通訊,在這兩台主機中新增兩台路由器,即可實現通訊。在本實驗中,由CentOS系統充當路由器,具體網路和IP資訊科檢視下圖:

 

 

        從上圖可以得知:

        主機A:有一個網絡卡(網路介面卡)使用自定義虛擬網路VMnet6進行連線,ip為55.0.0.55/8。

        主機 B:有一個網絡卡使用自定義虛擬網路VMnet7進行連線,ip為155.0.0.55/16。

 

        路由器a:使用CentOS7.3系統充當,有兩個網絡卡,第一個網絡卡,連線到VMnet6連線,ip為55.0.0.1/8,即和主機A處於同一個網路,即可以直接和主機通訊;第二個網絡卡,使用VMnet1,即僅主機連線模式,ip設定為192.168.32.55/24。

        路由器b:使用CentOS6.9系統充當,有兩個網絡卡,第一個網絡卡,連線到VMnet1,ip為192.168.32.155/24;第二個網絡卡,連線到VMnet7,ip為155.0.0.1/16。

       

        這樣設定,相當於host A和route a的A網絡卡直接相連,route a的B網絡卡和route b的C網絡卡直接相連,route b的d網絡卡和host B直接相連。直接相連,意味著可以直接進行網路存取,使用ping命令可以檢測

 

實驗步驟

  1. 硬體設定。按照圖示,給各個裝置新增網絡卡裝置,在VMware 12 pro中,在關閉虛擬機器的狀態下,右鍵單擊對應虛擬機器,設定-->硬體-->新增-->網路介面卡,就可以新增網絡卡

 

2.關閉防火牆。將所有裝置的防火牆關閉

關閉防火牆命令

     

CentOS 6:
           service iptables stop               # 臨時生效
           chkconfig iptables off             # 永久生效,關閉重新啟動後,任然有效
CentOS 7:
           systemctl stop firewall.service          # 臨時生效
           systemctl disable firewall.service    # 永久生效

 

檢視是否關閉

CentOS 6:
           service iptables status
CentOS 7:
           systemctl status firewall.service

3.關閉NetworkManager服務

NetworkManager和network不是同一個服務,當兩個服務同時開啟,會優先執行NetworkManager服務,關閉NetworkManager,不影響network服務。

CentOS  6:
           service NetworkManager stop
CentOS 7:        
           systemctl stop NetworkManager

4.設定網路

A. host A網路設定

DEVICE=eth1                        #    對應裝置名,根據自身的裝置名做修改
NAME=eth1                          #      設定名稱,可不設定
TYPE=Ethernet                 #      網路型別 乙太網
ONBOOT=yes                        #      自動連線
BOOTPROTO=static            #      設定靜態ip
IPADDR=55.0.0.55              #       ip
PREFIX=8                                #      網路位數
GATEWAY=55.0.0.1             #      閘道器
DNS1=8.8.8.8                       #    域名地址

B.host B網路設定

DEVICE=eth3                          #      根據自身的裝置名做修改
TYPE=Ethernet
IPADDR=155.0.0.55
PREFIX=16
GATEWAY=155.0.0.1
DNS1=8.8.8.8

C. route a網路設定

A網絡卡設定:
    DEVICE="ens38"
    ONBOOT="yes"
    TYPE="Ethernet"
    BOOTPROTO="static"
    IPADDR=55.0.0.1
    PREFIX=8
    DNS1=8.8.8.8

B網絡卡設定:
    DEVICE="ens33"
    TYPE="Ethernet"
    ONBOOT="yes"
    BOOTPROTO="static"
    IPADDR=192.168.0.55
    PREFIX=24
    DNS1=8.8.8.8

D. route b網路設定

C網絡卡設定:
    DEVICE=eth0
    HWADDR=00:0C:29:8F:5C:31
    TYPE=Ethernet
    UUID=19f3041b-317b-4a32-bed5-    23f526d177c1
    ONBOOT=yes
    NM_CONTROLLED=yes
    BOOTPROTO=static
    IPADDR=192.168.0.155
    PREFIX=24
    DNS1=8.8.8.8

D網絡卡設定:
    DEVICE=eth1
    TYPE=Ethernet
    ONBOOT=yes
    NM_CONTROLLED=yes
    BOOTPROTO=static
    IPADDR=155.0.0.1
    PREFIX=16
    DNS1=8.8.8.8 

5.開啟兩個“路由器”的路由功能

預設情況下,CentOS系統僅接收網路中與自身相關的封包,與自身無關的包,做遮蔽處理,為了能夠接收並轉發網路中的封包,需做一下設定:

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

6.測試

    使用ping命令,例如,在hostA上,測試與route a中A網絡卡的連線狀態:

            ping 155.0.0.1

    分段測試:

          先測試,直接相連的網路是否通訊:

          host A —— route A

          route B —— route C

          route D —— host B

          如果這三段都通了,可以進行下一步測試;否則,參照前面步驟重新設定

 

然後測試:

          host A —— route B

          host A —— route C

          host D —— route C

          host D —— route B

最終測試:

          host A —— host B

 本文永久更新連結地址http://www.linuxidc.com/Linux/2017-10/148084.htm


IT145.com E-mail:sddin#qq.com