3

Linux网络配置:Nat和桥接模式详解 - 阿高在学习

 2 years ago
source link: https://www.cnblogs.com/imagine-xw/p/16083847.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Linux网络配置:Nat和桥接模式详解

 Linux网络配置:Nat和桥接模式详解

一、我们首先说一下VMware的几个虚拟设备:

  1. Centos虚拟网络编辑器中的虚拟交换机:

            VMnet0:用于虚拟桥接网络下的虚拟交换机;

            VMnet1:用于虚拟Host-Only网络下的虚拟交换机;

            VMnet8:用于虚拟NAT网络下的虚拟交换机。

  2.宿主主机的虚拟网卡(安装了VMware虚拟机后,会在网络连接对话框中多出的两个虚拟网卡)

         VMware NetworkAdepter VMnet1:Host用于与Host-Only虚拟网络进行通信的虚拟网卡;

         VMware NetworkAdepter VMnet8:Host用于与NAT虚拟网络进行通信的虚拟网卡。

二、Nat技术原理

  • NAT:对IP数据报文中的IP地址进行转换,是一种在现网中被广泛部署的技术,一般部署在网络出口设备,例如路由器或防火墙上。
  • NAT的典型应用场景:在私有网络内部(园区、家庭)使用私有地址,出口设备部署NAT,对于“从内到外"的流量,网络设备通过NAT将数据包的源地址进行转换(转换成特定的公有地址),而对于“从外到内的"流量,则对数据包的目的地址进行转换。
  • 通过私有地址的使用结合NAT技术,可以有效节约公网 IPV4地址。

   注:数据包1→2出去的时候把源地址换成了出接口的公网地址了,所以回来的时候目的地址就找到出接口那个公网地址了。但在在真实网络环境中公网设备是没有私网的路由的,但是在虚拟机里面不同,都是私网地址,可能它们互相都有彼此的路由记录!

三、Linux网卡配置DHCP,在Nat网络模式下:

Centos虚拟网络编辑器中VMnet8的Nat设置DHCP自动获取IP,宿主主机网络适配器的VMnat8的IPV4也是自动获取IP。

Linux网卡配置DHCP:

这时Linux中Nat网卡的IP、虚拟网络编辑器中Nat的IP和宿主主机网络适配器的VMnat8的IP(在cmd用ifconfig查看)在同一个网段。

① 测试环境在只有一个Nat网卡(ifconfig时只有一个Nat网卡),没有桥接的网卡下,虚拟机和宿主主机(Windows主机)可以相互ping通!

② 当同时存在Nat网卡和桥接网卡时,虚拟机不能ping通宿主主机(丢包100%),宿主主机可以ping虚拟机!而在断开桥接的网络连接,关掉桥接网卡和Nat网卡,重启Nat网卡时,虚拟机和宿主主机(Windows主机)可以相互ping通!(①)

四、Linux网卡配置DHCP,在桥接网络模式下:

Centos虚拟网络编辑器中VMnet0的桥接设置自动桥接,宿主主机不需要桥接的虚拟网络适配器(同一个网段)。

Linux的桥接网卡配置DHCP(同上)!

桥接模式下Linux相当于在一个宿主主机局域网内创立了一个单独的主机,他可以访问这个局域网内的所有的主机,可以手动来配置IP地址,子网掩码。或者配置DHCP,虚拟机是和真实主机在同一个网段(Nat是两个网段),这个模式里,虚拟机和宿主机可以互相 ping通。

五、三种模式网络拓扑图

以下内容借鉴博客https://www.cnblogs.com/zejin2008/p/5935934.html,十分感谢!

0.vmnet0,vmnet1,vmnet8都是vmware虚拟出来的交换机,当然还有虚拟hdcp服务器没画出来,但不妨碍我们理解。

1.host A为你的宿主机,host B、hostC、hostN为你同一网络下的其它主机

2.vm bridge、vm host_only、vm nat为主机host A上虚拟出来的机器

3.vm bridge虚拟机选择网桥模式,vm host_only虚拟机选择host-only模式,vm nat虚拟机选择nat模式

有了如上拓扑结构,可以很容易推断出:

A.在bridge模式下,hostA、hostB、hostC、hostN、vm bridge这几台机器都能相互访问和上网。并且他们的网段相同。

B.在host-only模式下,hostA与vm host_only能相互访问,但是vm host_only不能上网,vm host_only这台虚拟机与除hostA外的其它主机都不能相互通信。

C.在nat模式下,hostA与vm nat能相互访问,vm nat也能通过virtual net路由器进行上网,可以访问到hostB hostC hostN机器,但是hostB hostC hostN不能访问到vm nat这台虚拟机。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK