用我们的物理机作为路由器,开启利用NAT,将两个虚拟机放在同一个网段下。
设置虚拟机中的起止IP
配置主机A的IP和默认网关
配置主机B的IP和默认网关
构建好网络
目录
如果A的默认网关配成202.192.3.5
搭建网络
那么理论上网络变成:
那么我通过主机A访问外网的链路:
A→B→物理机vm网卡→物理机WLAN网卡→外网
下面实验一下,用主机Aping一下我物理机WLAN的网卡
但是ping不通,同时无法上外网
但是可以ping通我的主机B,这个原因可能是A和B在同一子网下,A到B不需要经过网关
在主机B上开启路由转发及添加路由
管理员打开cmd
- 执行:
reg add HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v IPEnableRouter /D 1 /f
- 进入注册表
将 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\IPEnableRoute设为1
-
启动Routing服务
将 Routing and Remote Access 服务的启动类型更改为自动并启动服务
-
进入CMD执行命令
sc config RemoteAccess start= auto
sc start RemoteAccess
- 最后开启转发功能:
netsh interface portproxy add v4tov4 listenaddress=202.192.3.5 listenport=80 connectaddress=202.192.3.2 connectport=80
追踪一下ip
看看我从我的主机A访问我的服务器会经过那些路由
这个就是访问到主机B(名称是MS-ZAUTGGAXCDTM)
再转发到物理机
物理机访问我服务器的路径:
如果B的IP地址误配成202.192.3.1
配置IP
检查ipconfig发现,主机B给配置的ip自动变成了其他的ip
而且用主机Aping202.192.3.1会直接ping到物理机
而且主机B也访问不了外网
原因:
ARP协议会发现两台计算机发生IP冲突的提示。 当计算机首次连接到网络时,网卡将发送一个免费的ARP请求。 该请求使用其自己的IP和MAC地址作为源,以广播全1的MAC地址作为目的。为了让整个网络知道其将使用此MAC和IP,如果此广播域中的其他计算机也占用了该IP,则另一台计算机将立即发回免费的ARP,以指示IP冲突。 现在,这台计算机知道了冲突,并将在系统上显示。
A和B的Mac地址相同
配置B的Mac地址和A的一样
然后会出现报错
然后通过ping物理机ip,发现无法连接
原因
mac地址冲突会导致报文混乱, 网络没法区分设备1和设备2, 从而导致网络异常原本发给设备1的数据可能会发给设备2,导致了设备1上看现象就是网络时断时续。
若错误配为255.255.0.0,则对路由转发有什么影响
主机Bping主机A和B可以互相ping通
原因
当主机B向主机A发包的时候,通过子网掩码判断是不是在同一个网段,但是用他们互相的子网掩码和对方ip和自己ip相与得到的结果是一样的。所以发现两个主机并在一个网段里面,所以可以连通
Comments | NOTHING