在开发板嵌入式设备,有一个mgbe网卡,用网线与连接soc的网卡,和外接网卡,将网卡usb接口插入电脑,选择接入到Ubuntu系统
在Ubuntu将能识别到这个外接网卡,这样就可以通过Ubuntu和soc通讯了,
如下,Ubuntu识别到一个ens33网卡,设置soc的和Ubuntu的ip在同一个网段,
soc: ifconfig mgbe2_0 192.168.80.12 netmask 255.255.255.0
Ubuntu:ifconfig ens33 192.168.80.12 netmask 255.255.255.0
互ping一下,保证网络链路是通的。
ubuntu设置,将数据包通过nat机制转发出去
c
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o ens33 -j MASQUERADE
soc设备端,有多个网卡,我是通过mgbe2_0与外部通讯的,设置一下默认网关,数据默认从这个网卡传输,设置dns
c
route add default gw 172.16.1.1 dev mgbe2_0
echo "nameserver 114.114.114.114" > /etc/resolv.conf
或者手动修改 vi /etc/systemd/resolved.conf文件,每次开机都立即生效,dns设置成114.114.114.114或8.8.8.8
如果不正确,检查是否将/run/system/resolve/resolv.conf链接到/etc/下,有些可能会导致无法覆盖修改的dns,不起效,可以手动建立链接文件
然后开始测试ping外网
在soc嵌入式板端串口,输入 ping www.baidu.com,确认是否可以ping通,可以的话,就可以上外网了
可以通过安装命令,确认
sudo apt-get install ,安装一个应用程序,就ok了