1.设置虚拟机使用“桥接模式” (注意要将虚拟机网卡桥接到宿主机当前网络接入的网卡,保持一致,要不然没法连通)
2.使用 vi
/etc/sysconfig/network-scripts/ifcfg-enp0s3 打开配置文件(其中 enp0s3
是你的linux的网卡名,在shell中 使用 ip addr
命令自行查看自己的名称并将此处的改成自己的,紧跟数字的后面那个参数就是,不是 lo 那个)
修改以下参数
将 BOOTPROUTE="dhcp" 改为 BOOTPROUTE="static"
将 ONBOOT="no" 改为 ONBOOT="yes"
然后添加如下参数(位置随意)
IPADDR="192.168.0.150"(注意:因为使用“桥接模式”所以此处的 ip 地址一定要和宿主机在一个网段,设置时先看一下宿主机的ip,宿主机这时自身要设置成静态ip 且不能和该网段其他主机的 ip 冲突)
NETMASK="255.255.255.0"
NM_CONTROLLED="no"
3.关闭防火墙并使防火墙开启 22 端口
sudo firewall-cmd --zone=public --add-port=22/tcp --permanent
4.重新开启防火墙
sudo systemctl restart firewalld.service
5.重启网络服务
sudo systemctl restart network.service
6.重启系统
右击 centos7 -> 重启
7.打开xshell客户端
输入ip 192.168.0.150 连接即可,配置完成
-------------------------------------------
常犯错误
1.修改完参数后没有重启网络服务及虚拟机
2.没有设置防火墙开放 22 端口
3.【没有配置物理地址 HWADDR】我们都知道ip地址在交换机下局域网是不起作用的,此时主机身份由物理地址进行识别,
不配置物理地址也是不能被正确识别联网的。
配置方式仍是在 ifcfg-enp0s3 (根据自己的网卡名来) 文件下添加参数 HWADDR=你的物理地址
-----------------------------------------------
续:
设置完成后发现 xshell 终端可以远程连接虚拟机了 但是ping 不通外网 ,原因很简单,就是因为没有设置好虚拟机的“网关”和“域名”这两个因素
解决:
1.打开配置文件 vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 配置 网关 和 dns
写入以下配置项
GATEWAY="10.0.70.1"(这个要写成自己机器上的)
DNS1="8.8.8.8" # (Google公共DNS以下相同)
DNS2="8.8.4.4"
2.保存后记得重启网络服务
sudo systemctl restart network.service
3.重启虚拟机(不进行重启不会生效,非常重要),完成配置
sudo reboot
注:配置文件 # vi /etc/resolv.conf 中的信息来自上述文件的配置(可忽略)
--------------------------
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
sudo firewall-cmd --zone=public --add-port=22/tcp --permanent
sudo systemctl restart firewalld.service
sudo systemctl restart network.service
service network restart [ 等价以上命令 ]
service firewalld restart [ 等价以上命令 ]