[计算机网络]虚拟机中的网卡

简介: 最近在学习极客时间上的一门课程<趣谈网络协议>,里面有涉及到虚拟机网络的一些东西.正好一直在接触,站在巨人的肩膀上,我也来写写.

最近在学习极客时间上的一门课程<趣谈网络协议>,里面有涉及到虚拟机网络的一些东西.正好一直在接触,站在巨人的肩膀上,我也来写写.

为什么需要用虚拟网络呢?我在现实世界中扯网线不可以嘛?其实是完全 OK 的,但是这样做的话,成本会非常高,主要有以下几个方面:

  • 1 ,客户那边需要一台系统, OK ,自己去购买一台服务器,供客户使用.一台服务器可以使用至少是 10 年,在这期间,客户和你解除了合作关系,这台服务器还要不要?可别忘了,当时买这台服务器,可是花了价钱,还要把服务器放在机柜里,布线等等这些过程.
  • 2 ,客户那边说,给我的这台系统,内存不够用了,怎么办?用的是真实服务器,还能怎么办?把服务器停机弄下来再把内存条装上去.这个过程,客户那边如果还在用服务器,你就这么给弄下来了?还有一点,这个过程是需要人手动去做的,这个人力成本有算进去嘛?一台需要一个人,如果规模大起来,上万台服务器,其中有 100 台服务器需要更换内存,再用人力去解决问题?
  • 3 ,资源利用率不高.客户那边只需要一个 4 核 8G 的配置,但是服务器一般没有这么低的配置,所以剩下的资源怎么办?只能闲置.
  • 4 ,这台服务器我给了这个用户使用,然后使用期限到期了,这位用户没有续费,是不是就需要重装系统之后,才能给下一位客户使用?

这个需求挺大的,对吧?所以就有了虚拟机的概念.

虚拟机想要上网,就需要来聊聊虚拟机中的网络是如何工作的.

如果你在自己的笔记本上面倒腾过虚拟机,那你对虚拟机的三种联网方式应该会比较熟悉:仅主机模式,桥接模式和 NAT 模式.

下面就一个一个模式的来说说,正好倒腾虚拟机这么久,没有很系统的总结过.

仅主机( host-only )模式

这种模式,一般不常用,但是也来介绍一下.

这种模式提供的只是,物理机和虚拟机之间的相互访问,只是可以实现物理机和虚拟机之间的数据交换,但是虚拟机是没办法访问 Internet 的. 实现物理机和虚拟机之间的数据交换有两种方式:一是动态 IP 地址,另外一种是静态 IP 地址.

如果是采用动态 IP 地址的话,那就要多做一步:需要将你的网络共享. 如果是采用静态 IP 地址的话,虚拟机的 IP 设置,网关, DNS 设置都要注意和虚拟机网卡中相同.

此时,你的虚拟机是可以和物理机进行相互访问的.

但是请注意,此时你的虚拟机是访问不了 Internet 的!!!

host-only 模式,只是负责让你的虚拟机和物理机之间可以相互访问,并不负责让你的虚拟机联网.所以这种模式,一般都不常用.

毕竟你倒腾虚拟机,是为了能够上网搭建个集群什么的,对吧.

桥接( Bridge )模式

桥接,桥接,意思就是大家都在一个区域内,只是呢,需要一座桥来连接起来

有前提的:就是大家要在一个区域内,也就是说距离不能太远.要不然你在北极,我在南极,这个桥建不起来,对吧.

通过这种方式,让虚拟机联网是最快的.因为它就类似于你在局域网中有另外一台电脑,只要虚拟机所在的物理机可以上网,那么通过桥接模式,也就可以上网了.

但有一点要注意,就是要保证虚拟机的 IP 和所在局域网的 IP 没有冲突.

如果你的物理机所在局域网 IP 地址没什么限制,用这种方法上网就行了,对新手也比较友好.如果 IP 地址比较稀缺,那就最好不要用这种方法上网.

NAT ( Network address translate ) 模式

其实 NAT 联网这种方式,不单单在虚拟机中有应用,在实际中也有应用.比如:你的公司买了一个公网 IP : 114.114.114.114 ,但是你却发现,公司里面是有很多个 IP 地址的.

这就是 NAT 模式.具体工作原理就是:公司里面的一个 IP 地址是 192.168.111.111 这个地址想要访问 Internet ,此时这个 IP 地址所发送的请求会被包装成一个数据包,然后这个数据包会通过一个网关或者路由器,这个网关或者路由器的 IP 地址就是公司买的公网 IP .这样网关或者路由器在要发送数据包时,对数据包的 IP 协议层数据进行更改(也就是 NAT ),这样你就可以很顺利的去访问 Internet .这种方法的存在解决了两个问题: 1 , IP 地址稀缺问题; 2 ,公司的局域网 IP 也可以上网.

同样的道理,在虚拟机中 NAT 模式上网,也是如此.所以虚拟机中的网络 IP 地址,就算和物理机所在局域网的 IP 地址不一样,甚至不在一个网段内,也是 OK 的.在这里,物理机的 IP 地址就相当于虚拟机的网关,因而在这种模式下,虚拟机是可以 ping 通物理机的,但是物理机不能 ping 通虚拟机.

在这种模式下,联网方式也有两种:一是动态获取 IP 地址,另外一种是设置静态 IP 地址.

同样,对于新手来说,虚拟机的联网方式,使用动态获取 IP 地址就好了,具体就是在配置文件中,只需要将 onboot 改为 yes ,然后重启网卡,虚拟机就可以连接到网络上了.

如果想要设置静态 IP 地址也可以,就需要修改虚拟机网卡的网关,子网掩码和 DNS .

一般来说,使用动态获取 IP 地址这种方式就满足了大部分的需求,另外对于静态 IP 地址这一块,我一直没有实践过,怕误导,就不细说了.如果您感兴趣,可以细细钻研一下.

以上. 感谢您的阅读~

欢迎加入我们的知识星球,一起成长,交流经验。加入方式,长按下方二维码噢

最后,我想重复一句话:选择和一群优秀的人一起成长,你成长的速度绝对会不一样!

相关文章
|
1月前
|
网络协议 Linux
通用网卡配置文件配置网络
本文介绍了在RHEL 7系统中配置网络的方法。首先,通过编辑位于`/etc/sysconfig/network-scripts`目录下的网卡配置文件(例如`ifcfg-ens33`),设置静态IP地址、子网掩码、网关和DNS等参数。接着,使用`systemctl`命令重启网络服务,确保配置生效。此外,还介绍了使用`nmtui`图形界面工具进行网络配置的步骤,包括修改IP地址、保存配置和重启网络。最后,通过`ip addr`或`ifconfig`命令验证配置是否成功。
97 2
|
2月前
|
Ubuntu Linux 虚拟化
Linux虚拟机网络配置
【10月更文挑战第25天】在 Linux 虚拟机中,网络配置是实现虚拟机与外部网络通信的关键步骤。本文介绍了四种常见的网络配置方式:桥接模式、NAT 模式、仅主机模式和自定义网络模式,每种模式都详细说明了其原理和配置步骤。通过这些配置,用户可以根据实际需求选择合适的网络模式,确保虚拟机能够顺利地进行网络通信。
108 1
|
2月前
|
虚拟化 网络虚拟化 网络架构
虚拟机 VMware Workstation 16 PRO 的网络配置
虚拟机 VMware Workstation 16 PRO 的网络配置
91 2
|
3月前
|
KVM 虚拟化
KVM虚拟机的桥接网络
文章主要介绍了KVM虚拟机的NAT和桥接网络类型的工作原理、配置方法以及如何进行网络模式的切换。
53 3
KVM虚拟机的桥接网络
|
3月前
|
网络协议 网络虚拟化
接收网络包的过程——从硬件网卡解析到IP
【9月更文挑战第18天】这段内容详细描述了网络包接收过程中机制。当网络包触发中断后,内核处理完这批网络包,会进入主动轮询模式,持续处理后续到来的包,直至处理间隙返回其他任务,从而减少中断次数,提高处理效率。此机制涉及网卡驱动初始化时注册轮询函数,通过软中断触发后续处理,并逐步深入内核网络协议栈,最终到达TCP层。整个接收流程分为多个层次,包括DMA技术存入Ring Buffer、中断通知CPU、软中断处理、以及进入内核网络协议栈等多个步骤。
|
4月前
|
存储 网络协议 搜索推荐
在Linux中,如何配置和管理虚拟机的网络和存储?
在Linux中,如何配置和管理虚拟机的网络和存储?
|
4月前
|
Linux
虚拟机安装Linux系统的网络配置
该博客文章提供了解决虚拟机中Linux系统网络问题的多种方法,包括重置网络服务、修改网络配置文件、使用不同网络模式等,以确保虚拟机能够成功连接到网络。
虚拟机安装Linux系统的网络配置
|
4月前
|
安全 网络安全
【Azure 环境】当本地网络通过ER专线与Azure云上多个虚拟网络打通,如何通过特定的网络策略来限制本地部分网段访问云上虚拟机22端口?
【Azure 环境】当本地网络通过ER专线与Azure云上多个虚拟网络打通,如何通过特定的网络策略来限制本地部分网段访问云上虚拟机22端口?
|
4月前
|
网络协议 Linux 网络安全
Hyper-v 如何配置 Centos7 虚拟机网络?
Hyper-v 如何配置 Centos7 虚拟机网络?
152 0
|
4月前
|
虚拟化
VMware NAT 模式 虚拟机网络电缆被拔出,连不上网
VMware NAT 模式 虚拟机网络电缆被拔出,连不上网
112 0