简单点,linux三种网络模式

简介: 本篇内容介绍了linux三种网络模式。

一:简单介绍


linux系统有三种网络模式分别是桥接模式、NAT模式、仅主机模式,名称分别为vmnet0、vmnet1、vmnet8。


微信图片_20220507231801.png


系统中又有VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两块虚拟网卡,很显然这两块虚拟网卡对应虚拟机上的vmnet1和vmnet8,但是为什么没vmnet0对应的虚拟网卡呢?


微信图片_20220507231806.png


让我通过实验来告诉你!


二:实践检测


1.Bridged(桥接模式


什么是桥接模式?


桥接模式就是在物理机的网卡跟虚拟机的网卡之间建立一个网桥,可以把物理机的网卡想象成交换机,物理机和虚拟机都接在一个交换机上(物理网卡)交换机连接路由器、光猫就可以访问互联网了,接在交换机下的所有主机都可以相互通信互不影响。这样物理机和虚拟机就都可以上网了。

这样也就就解释了为什么windows中没有VMware Network Adapter VMnet0与vmnet0相对应了!

桥接模式下,虚拟机ip地址需要与主机在同一个网段,如果需要联网,则网关与DNS需要与主机网卡一致。


微信图片_20220507231811.png


1.设置网卡连接模式


微信图片_20220507231816.png


这个地方桥接到…可以填自动,以防出现以太网口没有开启的情况


微信图片_20220507231822.png


2.编辑网卡配置文件


(1)查看物理主机网卡信息,虚拟机ip地址需要与主机在同一个网段,如果需要联网,则网关与DNS需要与主机网卡一致。


微信图片_20220507231827.png


(2)配置虚拟网卡并测试ping通外网


[root@b ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens32
UUID=6cfcde1c-373b-4682-bbe8-589ad6b7c344
DEVICE=ens32
ONBOOT=yes
IPADDR=192.168.43.160
PREFIX=24
GATEWAY=192.168.43.1
DNS1=192.168.43.1
[root@b ~]# systemctl restart network
[root@b ~]# ping baidu.com
PING baidu.com (39.156.69.79) 56(84) bytes of data.
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=1 ttl=50 time=87.9 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=2 ttl=50 time=80.2 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=3 ttl=50 time=78.8 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=4 ttl=50 time=106 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=5 ttl=50 time=65.4 ms
^C
--- baidu.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 65.463/83.802/106.564/13.486 ms


(3)桥接模式下远程登录虚拟机


微信图片_20220507231834.png


4)桥接模式配置简单,但如果你的网络环境是ip资源很缺少或对ip管理比较严格的话,那桥接模式就不太适用了。那么下面学一种NAT模式


2、NAT(地址转换模式)


NAT模式借助虚拟NAT设备和虚拟DHCP服务器来实现虚拟机上网功能,具体流程可看图


微信图片_20220507231839.png


聪明的同学可能发现中间为啥要多个VMware Network Adapter VMnet8,直接把主机网卡连到vmnet8虚拟交换机上不行吗?实际上VMware Network Adapter VMnet8的作用是为了实现虚拟机和主机之间相互通信!


(1)设置网卡连接模式


微信图片_20220507231844.png


微信图片_20220507231850.png


(2)配置虚拟网卡并测试ping通外网


[root@a ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens32
UUID=6cfcde1c-373b-4682-bbe8-589ad6b7c344
DEVICE=ens32
ONBOOT=yes
IPADDR=192.168.10.130
PREFIX=24
GATEWAY=192.168.10.1
DNS1=192.168.10.1
[root@a ~]# systemctl restart network
[root@a ~]# ping baidu.com
PING baidu.com (39.156.69.79) 56(84) bytes of data.
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=1 ttl=50 time=101 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=2 ttl=50 time=53.1 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=3 ttl=50 time=100 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=4 ttl=50 time=106 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=5 ttl=50 time=65.4 ms
^C
--- baidu.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 65.463/83.802/106.564/13.486 ms


(3)NAT模式下远程登录虚拟机


微信图片_20220507231856.png


VMware Network Adapter VMnet8的作用是让虚拟机和物理机之间通信,把物理机上的它禁用之后仍然可以ping通主机,但是不能远程登陆!


3.Host-Only(仅主机模式)


Host-Only模式其实就是NAT模式去除了虚拟NAT设备,然后使用VMware Network Adapter VMnet1虚拟网卡连接VMnet1虚拟交换机来与虚拟机通信的,Host-Only模式将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机相互通讯如图。


微信图片_20220507231900.png


(1)设置网卡连接模式


微信图片_20220507231905.png


微信图片_20220507231910.png


(2)仅主机模式下远程登录虚拟机


微信图片_20220507231915.png


(3)配置虚拟网卡并测试ping通外网


仅主机模式ping通外网需要共享物理主机的网卡,这就能上网了


微信图片_20220507231921.png


[root@a ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens32
UUID=6cfcde1c-373b-4682-bbe8-589ad6b7c344
DEVICE=ens32
ONBOOT=yes
IPADDR=192.168.137.130
PREFIX=24
GATEWAY=192.168.137.1
DNS1=192.168.137.1
[root@a ~]# systemctl restart network
[root@a ~]# ping baidu.com
PING baidu.com (39.156.69.79) 56(84) bytes of data.
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=1 ttl=50 time=97.9 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=2 ttl=50 time=90.2 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=3 ttl=50 time=88.8 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=4 ttl=50 time=106 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=5 ttl=50 time=95.4 ms
^C
--- baidu.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 65.463/83.802/106.564/13.486 ms


总结:以上就是关于vmware三种网络模式的工作原理及配置详解。写的都是手动配置,通过dhcp分配IP也是一样的道理,之需要把BOOTPROTO=dhcp,ONBOOT=yes即可实现虚拟机与外网通信!

相关文章
|
6月前
|
JavaScript
Vue中Axios网络请求封装-企业最常用封装模式
本教程介绍如何安装并配置 Axios 实例,包含请求与响应拦截器,实现自动携带 Token、错误提示及登录状态管理,适用于 Vue 项目。
243 1
|
8月前
|
负载均衡 算法 安全
基于Reactor模式的高性能网络库之线程池组件设计篇
EventLoopThreadPool 是 Reactor 模式中实现“一个主线程 + 多个工作线程”的关键组件,用于高效管理多个 EventLoop 并在多核 CPU 上分担高并发 I/O 压力。通过封装 Thread 类和 EventLoopThread,实现线程创建、管理和事件循环的调度,形成线程池结构。每个 EventLoopThread 管理一个子线程与对应的 EventLoop(subloop),主线程(base loop)通过负载均衡算法将任务派发至各 subloop,从而提升系统性能与并发处理能力。
426 3
|
8月前
基于Reactor模式的高性能网络库github地址
https://github.com/zyi30/reactor-net.git
191 0
|
6月前
|
安全 Linux 网络安全
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
172 0
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
|
7月前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
448 18
|
7月前
|
网络协议 关系型数据库 Linux
【App Service Linux】在Linux App Service中安装 tcpdump 并抓取网络包
在App Service for Linux环境中,无法像Windows一样直接使用网络排查工具抓包。本文介绍了如何通过TCPDUMP在Linux环境下抓取网络包,包括SSH进入容器、安装tcpdump、执行抓包命令及下载分析文件的完整操作步骤。
354 5
|
6月前
|
安全 测试技术 虚拟化
VMware-三种网络模式原理
本文介绍了虚拟机三种常见网络模式(桥接模式、NAT模式、仅主机模式)的工作原理与适用场景。桥接模式让虚拟机如同独立设备接入局域网;NAT模式共享主机IP,适合大多数WiFi环境;仅主机模式则构建封闭的内部网络,适用于测试环境。内容简明易懂,便于理解不同模式的优缺点与应用场景。
820 0
|
8月前
|
Web App开发 网络协议 Linux
【Linux】网络基础
TCP/IP五层模型是网络通信的基础框架,将复杂的数据传输过程分为物理层、数据链路层、网络层、传输层和应用层,每层各司其职,协同完成远程通信。该模型确保了不同设备和网络之间的互联互通,是现代互联网运行的核心机制。
673 5
|
8月前
|
缓存 索引
基于Reactor模式的高性能网络库之缓冲区Buffer组件
Buffer 类用于处理 Socket I/O 缓存,负责数据读取、写入及内存管理。通过预分配空间和索引优化,减少内存拷贝与系统调用,提高网络通信效率,适用于 Reactor 模型中的异步非阻塞 IO 处理。
266 3
|
10月前
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
273 18