这里我测试主要是我的宿主机和虚拟机之间的网络
右键wifi -> 打开网络和Internet设置 -> 右键 -> 状态 -> 详细信息 -> 查看ip
用命令行输入ipconfig
也能查询自己的ip,但是不能浏览器直接查询ip那样是不对的
为什么咱们百度ip和咱们查出来的ip不一样呢,因为咱们连得都是外网或者内网,然后通过路由,由运营商给咱们分配了一个ip,所以显示的并不是自己的主机ip,如图
在命令行使用 # ifconfig
命令查看,虚拟机的ip
根据上面你查询出来的宿主机ip和虚拟机ip,测试一下能否相互 ping 通
在虚拟机命令行使用# ping 宿主机ip
命令,下图就代表,虚拟机就可以接收主机信息
反过来我们测试一下宿主机是否可以接收虚拟机信息,在宿主机命令行使用# ping 虚拟机ip
命令,如下就是没有问题。
我们会发现如果宿主机和虚拟机不在一个网段也可以ping通,是为什么?
虚拟机直接连接外部物理网络的模式,主机起到了网桥的作用。这种模式下,虚拟机可以直接访问外部网络,并且对外部网络是可见的。(宿主机和虚拟机必须ip配置在一个网段下,子网掩码,网关、DNS配置是一样的)
虽然机构比较简单,但是实际应用还是比较少的,安全性也没那么好,下面是他的逻辑图
虚拟机和主机构建一个专用网络,并通过虚拟网络地址转换(NAT)设备对IP进行转换。虚拟机通过共享主机IP可以访问外部网络,但外部网络无法访问虚拟机。
# vim /etc/sysconfig/network-scripts/ifcfg-ens33 //进入修改ip的文件
下面把dnch动态分配ip改为static静态的,含义就是你可以自己固定一个ip给你的虚拟机,然后新增一个ip地址、网关和域名解析器,你新的ip必须和你虚拟之前的前三位ip一致。
例如:虚拟机以前ip 192.168.134.129 ,你修改的格式必须是 192.168.134.XXX,网关和域名解析器同上。
# service network restart //重启网络服务
# ifconfig //查看虚拟机ip的信息
下图就证明ip已经更改成功了,然后去宿主机ping一下新的ip看看通不通就ok了
①物理机能ping通虚拟机,虚拟机ping不通物理机,一般都是因为物理机的防护墙,关闭防火墙就ok。
②虚拟机能ping通物理机,但是ping不通外网,一般都是因为DNS设置的问题
。
③虚拟机ping www.baidu.com 显示域名未知等信息,一般查看GATEWAY和DNS设置是否正确
④如果以上全部设置完还是不行,需要关闭Networkmanger服务
# systemctl stop Networkmanger //关闭
# systemctl disable Networkmanger //禁用
⑤如果检查# systemctl status Networkmanger 有问题,需要检查ifcfg-ens33文件
我们为什么要修改主机名呢,因为上面修改虚拟机ip要麻烦一点,修改主机名的话,就相当于,一个主机名对应一个虚拟机ip,更加方便简洁。
为的是虚拟机直接通信更加方便一点
# hostname //查看主机名字
# hostname //查看包含主机名字的一些信息
# hostname set-hostname 主机名 //修改主机名
# vim /etc/hosts //打开主机名和虚拟机ip对应的文件
如果操作完hosts文件,没有直接保存,那就另存为然后替换文件,就ok了,然后直接ping 域名
测试就行了
C:\Windows\System32\drivers\etc //hosts文件所在路径
打开宿主机的命令行,输入 # ssh root@你的主机名
,然后会有提示和输入密码,就能远程进入虚拟机的命令行了
想要退出,输入 exit
命令就行,远程登录有很多工具:Xshell、SSH Secure Shell等
这是我的另一篇文章Xshell 7的使用