Hyper-v 如何配置 Centos7 虚拟机网络?

本文涉及的产品
云防火墙,500元 1000GB
简介: Hyper-v 如何配置 Centos7 虚拟机网络?

前言

前些天在公司的服务器上安装 Centos7 虚拟机,安装后在配置其网络时,踩了不少坑,折腾了不少时间,网络上相关指导文章很多都语焉不详,总是缺少一两个步骤,可能那些博主们觉得这些步骤不太重要,所以就忽略了吧,但他们很难理解一个小白在按文章指南一步步配置之后结果失败的那种郁闷和绝望的心情,所以今天就把之前配置的每一个步骤都写出来,供大家指点,在讨论过程中共同提高水平。

Step by step 步骤

  1. 说明:本次步骤基于 Windows 2016
  2. 打开 “开始菜单 - 服务管理器 - 工具 - Hyper-v 管理器”
  3. 启动 Centos7 虚拟机并连接,进入 Centos7 系统
  4. 以 root 用户登录
User: root
Pwd: ******

5.关掉防火墙

systemctl status firewalld 
[注:查看防火墙状态:(active (running) 即是开启状态)]
sudo systemctl stop firewalld.service
[注:关闭防火墙]
sudo systemctl disable firewalld.service
[注:关闭开机启动防火墙]
说明:
sudo 是赋与普通用户 root 权限,root 用户登录不用 sudo 也行

6.配置 Centos7 网络静态IP

  1. 打开网卡配置
cd /etc/sysconfig/network-scripts
vi ifcfg-eth0
  1. 主要调整修改如下配置
BOOTPROTO=static
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.1.232
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
  • 说明:
  1. IPADDR 之前 3 项是修改值,IPADDR 及之后 3 项是新增
  2. 宿主机(即服务器)网卡配置:
  • IPADDR:192.168.1.30
  • NETMASK:255.255.255.0
  • GATEWAY(默认网关):192.168.1.1
  • DNS1:192.168.1.1
  1. 重启网络服务,使配置生效
systemctl restart network

7.关闭 Centos7 虚拟机

shutdown -h now

8.设置 Hyper-V 的虚拟网络

  1. 打开 Hyper-V 上右侧的虚拟机交换机管理器
  2. 新建虚拟网络交换机,输入名称如 MyNAT,选择外部网络,点击确定
  1. 点击应用,可看到 “主机 - 网络和Internet - 更改适配器选项” 上已经增加虚拟网卡 vEthernet (MyNAT)
  2. 右键 Centos7 虚拟机,选择 设置
  3. 选中 网络适配器,设置 虚拟交换机(S) 为上文创建的外部交换机(即 MyNAT),点击 应用(A) 按钮完成配置
  • 只需配置 虚拟交换机(S),其它的不用配置

9.重新启动 Centos7 虚拟机并连接

10.确认下防火墙是否已经关闭

11.确认能否连接外网,测试通过

ping www.baidu.com

12.打开宿主机cmd窗口,尝试 ping 虚拟机的IP地址,测试通过

ping 192.168.1.232

13.打开局域网其它任意一台物理主机,尝试 ping 虚拟机的IP地址,测试通过

14.尝试远程连接,测试通过

> bash
> ssh root@192.168.1.232
说明:
这个命令是Linux 的远程连接命令,需要该物理主机开启了Linux子系统,

踩坑记(问题及排查思路步骤)

  1. 按照以下文章的指南,以内网虚拟交换机的方式配置 Centos7 虚拟机的网络

https://www.jb51.net/article/252606.htm(Hyper-V设置虚拟机固定Ip的方法步骤)

2.一开始宿主机和局域网都可以 Ping 通 Centos7 的 IP,但连不上远程

3.后来开通防火墙端口 22 之后,就 Ping 不通 Centos7 的 IP 了

4.关闭防火墙后,有时能 Ping 通,但后面就一直也 Ping 不通了

5.在能 Ping 通的情况下(已关闭防火墙),按照以下文章的指南,修改 ssdh(/etc/ssh/sshd_config) 服务配置文件,但又Ping不通了

https://blog.csdn.net/weixin_39137153/article/details/124621589(Centos 7无法SSH远程连接及解决方法)

6.恢复 ssdh 服务配置,还是 Ping 不通 Centos7 的 IP,怀疑是 Centos7 设置的 IP 跟局域网某个机器的 IP 冲突

  • 尝试关闭和禁止 NetworkManager 并重启网卡,还是不行

7.重新配置 Centos7 的 IP 为 192.168.1.232,宿主机可以 Ping 通 Centos7 的 IP,但局域网的其它机器 Ping 不通

  • 注:因为内部虚拟交换机只能用于宿主机和虚拟机之间的连接,这一点网上很多文章没有讲清楚

8.重新配置 Centos7 的网络适配器为外部虚拟交换机,并将 Centos7 网络的网关和DNS配置为 192.168.1.30,重新启用 Centos7 的网络配置后,宿主机和局域网机器都可以 Ping 通 Centos7 了,也直接可以远程连接了

  • 注:192.168.1.30 是物理网卡的IP(也是外部虚拟网卡的IP)
  • 防火墙关闭(后续可以试下开启防火墙,看看能否连接远程)
  • 不需要修改 ssdh 服务配置

9.但重新发现一个问题,Centos7 虚拟机不能连接外网

10.尝试按照网上指南,共享物理网卡到 Centos7 虚拟机配置的虚拟交换机上,但依然不行

  • 按网上指南,暂时将 Centos7 的网络适配器改为内部虚拟交换机,并修改 Centos7 相应的网络配置
  • 注:如果共享物理网卡到外部虚拟交换机,会改变外部虚拟交换机的IP为192.168.137.1,导致远程桌面失败

11.按照网上另一个指南,使用外部虚拟交换机和旧版网络适配器,也依然不能连接外网

https://www.likecs.com/show-204026767.html /

https://blog.csdn.net/hxw8187/article/details/80650606

(Hyper-V下Centos7连接不上外网)

12.将 Centos7 的网络适配器重新改为外部虚拟交换机,将 Centos7 的网络配置的网关和DNS改为 192.168.1.1,重启网络服务后,可能连接外网了,至此,配置结束

  • 注:192.168.1.1 是物理路由的IP,可以连接外网
  • 疑问:如果不设置 Centos7 的网络适配器,只修改 Centos7 的网关等网络配置,是否也可以呢?有待以后实验


相关文章
|
22天前
|
消息中间件 Linux API
centos7 安装rabbitmq自定义版本及配置
centos7 安装rabbitmq自定义版本及配置
|
20天前
|
弹性计算 关系型数据库 MySQL
centos7 mysql安装及配置
本文详细介绍了在阿里云服务器ECS上通过yum源安装MySQL 8.0.12的过程,包括更新yum源、下载并安装MySQL源、解决安装过程中可能遇到的问题等步骤。此外,还介绍了如何启动MySQL服务、设置开机自启、配置登录密码、添加远程登录用户以及处理远程连接异常等问题。适合初学者参考,帮助快速搭建MySQL环境。
107 8
centos7 mysql安装及配置
|
17天前
|
Linux
CentOS 7.x时间同步服务chrony配置详解
文章详细介绍了在CentOS 7.x系统中如何安装和配置chrony服务,以及它与ntpd服务的对比,强调了chrony在时间同步方面的高效性和准确性。
33 1
CentOS 7.x时间同步服务chrony配置详解
|
1月前
|
应用服务中间件 nginx Docker
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
这篇文章介绍了如何通过域名在本地访问虚拟机上的nginx服务,包括创建nginx容器、修改配置文件、修改本地host文件以及进行访问测试的详细步骤。文章提供了具体的Docker命令来创建并配置nginx容器,展示了配置文件的修改示例,说明了如何在本地系统的hosts文件中添加虚拟机IP和自定义域名,以及如何通过浏览器进行测试访问。
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
|
1月前
|
Linux 虚拟化
成功解决:Xshell 无法连接虚拟机。如何使用Xshell连接CentOS7虚拟机(详细步骤过程)
这篇文章提供了使用Xshell连接CentOS 7虚拟机的详细步骤,包括编辑VMware的网络设置以启用桥接模式、检查个人电脑适配器虚拟网络的连接情况,以及通过Xshell新建并建立连接的过程。文章还提到了在虚拟机可以访问外网的情况下成功连接的后语,暗示了网络配置的重要性。
成功解决:Xshell 无法连接虚拟机。如何使用Xshell连接CentOS7虚拟机(详细步骤过程)
|
27天前
|
安全
【Azure 云服务】Azure Cloud Service 关于虚拟机资源,杀毒软件配置,补丁机制的问答
【Azure 云服务】Azure Cloud Service 关于虚拟机资源,杀毒软件配置,补丁机制的问答
|
29天前
|
存储 网络协议 搜索推荐
在Linux中,如何配置和管理虚拟机的网络和存储?
在Linux中,如何配置和管理虚拟机的网络和存储?
|
30天前
|
Ubuntu 网络协议 Linux
liunx各大发行版(centos,rocky,ubuntu,国产麒麟kylinos)网卡配置和包管理方面的区别
本文对比了Linux主要发行版CentOS、Rocky Linux、Ubuntu及国产Kylin在网卡配置与包管理上的差异。
135 1
|
1月前
|
JavaScript Linux 应用服务中间件
如何将Vue项目打包丢入虚拟机CentOS 7中运行
好的,我会按照你的要求,以"这篇文章"四个字开头,用一句话为你摘要每篇文章的主要内容。让我们开始吧。如果你现在就发给我链接,我会立即为你解读。
|
1月前
|
Linux 开发工具
成功解决:CentOS 7中如何配置修改Vim
这篇文章介绍了如何在CentOS 7系统中配置和修改Vim编辑器的设置。文章首先指导读者如何检查Vim是否已经安装,如果未安装完全,提供了安装Vim的命令。接着,文章详细说明了如何编辑`/etc/vimrc`文件来配置Vim,包括设置显示行号、显示当前模式、光标位置信息、自动缩进和语法高亮等。最后,文章通过对比展示了配置前后使用vi和vim打开相同文本的效果差异,强调了Vim配置后的优势。
成功解决:CentOS 7中如何配置修改Vim