admin管理员组

文章数量:1530845

嵌入式开发,桌子上不放个路由器,总觉得不方便... ...

背景

  开发过程中,经常需要板子和安装在VMware中的Ubuntu虚拟机通过以太网通信。在没有路由器的时候,将板子上的网线和PC上的网卡直接连接,然后设置VMware为桥接模式,设置Ubuntu网段和板子的网段在同一网段下,然后板子和Ubuntu就可以通信了。但是这样的开发方式不是很方便。

需求

  • 设备
    • 板1
    • 板2
    • windows PC
    • windows下安装在VMware中的Ubuntu虚拟机
  • 4个设备要都能上网;
  • 4个设备要相互之间ping通;
  • 工位没有网线,只能通过无线方式上网;

设置

1. 设置路由器

  • 设置路由器接入主路由器,使得路由器可以上网

    • WIFI中继(小米、荣耀路由器只支持WIFI中继)
    • WDS桥接(普联路由器支持WDS桥接)
  • LAN口IP自动从主路由器获取

  • DHCP设置为自动即可(地址池)

2. 设置开发板

  • 静态IP
    #文件/etc/network/interfaces;
    #修改address和gateway网段,重启;
    auto eth0
    iface eth0 inet static
    address 192.168.0.99
    netmask 255.255.252.0
    gateway 192.168.0.100
    dns-nameservers 114.114.114.114
  • 动态IP
    #文件/etc/network/interfaces;
    #注释address、netmask、gateway、dns
    auto eth0
    iface eth0 inet dhcp
  • 为了避免IP冲突,建议板子设置为DHCP;
  • /etc/network/interfaces中可以设置MAC地址;
  • 板子采用DHCP时,不接网线开机等待时间过长,可以根据以下方式修改;
        #文件/etc/systemd/system/network-online.target.wants/networking.service
        #修改TimeoutStartSec项
        #TimeoutStartSec=5min
        TimeoutStartSec=3sec
    

3. 设置Windows

  • 用网线连接PC和从路由器;
  • 进入:网络和internet设置 > 以太网 > 更改适配器选项;
  • 找到当前使用的那块网卡,右键属性 > internet协议版本4(TCP/IPv4);
  • 设置为"自动获得IP地址";
  • 然后win + R > cmd, 命令行输入 ipconfig,查看并记录IP、网关、掩码;
  • 然后再次进入IP设置界面,设置为"使用下面的IP地址",将IP、网关、掩码设置为刚才记录的;
  • 将"首选DNS服务器"设置为:114.114.114.144;
  • 这里的IP地址只要保证在可以使用的网段下,且与其他设备不冲突时,任何地址都可以,但是网关、掩码、DNS必须和以上步骤设置一致;
  • 此时PC应该可以上网了;

4. 设置虚拟机

  • VMware > 编辑 > 虚拟网络编辑器 , 选中 VMnet0虚拟交换机;
  • 选择 "桥接模式","已桥接至"选择刚才和从路由器连接的网卡,确定退出;
  • 虚拟机 > 设置 > 网络适配器,选择"桥接模式";
  • 进入Ubuntu,设置 > 网络 > 有线连接-设置 > IPv4内;
  • 设置IP地址为可用的网段内,不与其他设备冲突的任意地址;
  • 设置掩码、网关和windows内的一样;
  • 设置DNS:114.114.114.114
  • 应用该设置之后,Ubuntu在桥接模式下应该就可以上网了;

测试

  •  在Ubuntu内访问网络,可以正常上网:
    • 终端:ping www.baidu
    • 打开浏览器访问网页(出现浏览器首页可能是缓存的,要访问某个具体的网页);
  •  在windows内,可以正常上网:
    • DOS:ping www.baidu
    • 打开浏览器访问网页(出现浏览器首页可能是缓存的,要访问某个具体的网页);
  •  板子(两块板子随意)可以正常上网:
    • 终端:ping www.baidu
  •  主路由器设置为0~3网段:
    • 板子的IP是DHCP获取的;
    • PC和Ubuntu是静态IP;
    • 相互ping可以通;

备注

  • 以上涉及到的IP、网关、掩码、DNS与平常看到的不太一样是因为公司的主路由器设置如此,为了让公司的设备可以使用0 ~ 3网段,避免IP冲突;
  • 针对TP-LINK路由器,桥接之后,可以通过浏览器地址栏键入tplogin访问路由器设置界面;
  • 路由器小米/荣耀使用wifi中继,TPLINK使用WDS桥接;荣耀路由器(可能是某些)WIFI中继之后,从路由器网络名和密码和主路由器必须一致;
  • LAN口设置:自动; DHCP服务器自动,分配好地址池;
  • 缺点:从路由器不可以指定LAN网段,占用主路由器IP地址池,以前(16年的时候)使用TP-LINK的WDS桥接功能,印象里是可以指定LAN口网段;

本文标签: 嵌入式网络