主机、虚拟机和开发板互ping
PC:Windows10系统
虚拟机:Ubuntu16.04
开发板:智龙V3
需求:主机、虚拟机和开发板三者ping通
前提:主机通过无线网卡上网,开发板系统为Linux系统
原理:开发板用网线与主机相连接,所以和主机连通是通过物理以太网网卡。所以三者需要通,只要将三者全部通过物理以太网网卡,设置相同网段,子网掩码以及网关就可以了。
三者相关参数:
主机:
IP:192.168.2.104
子网掩码:255.255.255.0
默认网关:192.168.2.1
虚拟机:
IP:192.168.2.105
子网掩码:255.255.255.0
默认网关:192.168.2.1
智龙V3开发板:
IP:192.168.2.106
子网掩码:255.255.255.0
默认网关:192.168.2.1
步骤
注:关闭PC和虚拟机防火墙
Windows关闭防火墙:
netsh advfirewall set allprofiles state off
#关闭防火墙
netsh advfirewall set allprofiles state on
#开启防火墙
netsh advfirewall show allprofiles
#查看防火墙状态
Ubuntu关闭防火墙:
sudo ufw status
#查看防火墙状态
sudo ufw enable
#开启防火墙
sudo ufw disable
#关闭防火墙
- 对主机以太网网卡设置静态ip,子网掩码以及网关。
设置>>网络和Internet>>更改网络适配器选项
对“以太网”网卡右键进入“属性”
双击“Internet协议版本4”进行如下配置
配置好后点确定退出即可。
-
配置虚拟机静态IP、子网掩码以及网关。(虚拟机我用的是VMware)
打开VMware后,先对虚拟网卡进行设置。点击右上角“编辑”>>“虚拟网络编辑器”
设置为桥接模式且桥接到我们的物理网卡上。此处如果我们的桥接网卡为自动,一般会帮我们选择我们目前的上网网卡。设置好后点击应用再确定退出。
接着我们还需要设置一下我们所用虚拟机的网络适配器。右键所用的虚拟机>>“设置”>>网络适配器>>选择“桥接模式”且选中“复制物理网络连接状态”。然后确定退出。开启虚拟机。
由于我们主机采用无线方式上网,所以此时我们虚拟机会提醒没有网络连接。因此我们需要为他设置一个静态IP。
打开终端后输入ifconfig
查看网卡,此时正常情况下是没有IP地址的,如果有,请检查一下前面设置桥接的步骤是否正确。
接着输入
ifconfig ens33 192.168.2.105 netmask 255.255.255.0
设置静态IP地址和掩码
输入route add default gw 192.168.2.1
设置默认网关。
再次ifconfig
查看网卡状态,此时网卡信息中会出现你的IP地址,代表设置好了。
-
配置开发板的IP、子网掩码以及网关。
打开minicom后,对其进行配置。
查看网卡信息ifconfig
输入
ifconfig ens33 192.168.2.106 netmask 255.255.255.0
设置静态IP地址和掩码
输入route add default gw 192.168.2.1
设置默认网关。
-
此时我们就配置好了,可以互相ping通了。
题外话:在网上搜索到的方法基本都大同小异,原理就是那个原理,但是还是有可能出现一些不可描述的问题。我自己也卡在这块好久,偶然的一顿饭后板子重新上了一下电,莫名其妙就通了。最后,所知有限,欢迎大家相互讨论交流,一起进步。