Ubuntu网络配置

📅 2026/6/19 17:07:54
Ubuntu网络配置
ubuntu网络配置比较复杂经过多次试错及验证将目前正确的网络配置记录下来。物理连接笔记本通过网线直连开发板笔记本通过扩展坞增加了一个网口网线插扩展坞上与开发板连接。以太网2 就是扩展坞的网线。虚拟机中需要配置两个网络适配器如下windows的IP是192.168.1.200ubuntu的IP是192.168.1.101开发板的IP是192.168.1.100。注意电脑的IP设置默认网关留空不写。上面配置完后再按照下面配置ubuntu和开发板的IP就能ping通了。ping通后想上电后能自动生效开发板进行如下设置第一步立即恢复网络临时生效通过adb shell登录开发板执行以下命令确保网线插在eth1上baship addr flush dev eth1 ip addr add 192.168.1.100/24 dev eth1 ip link set eth1 up然后测试bashping 192.168.1.200 # Windows ping 192.168.1.101 # Ubuntu如果通说明网卡正常我们继续固化。 第二步处理旧的rc.local既然方案一加延时不可行建议你将/etc/rc.local恢复为默认避免干扰新方案。你可以这样操作bashvi /etc/rc.local将内容改为text#!/bin/sh -e exit 0保存退出。第三步实施方案三自定义 init 脚本创建/etc/init.d/S99static_ip内容如下注意大小写和路径bash#!/bin/sh case $1 in start) sleep 5 ip addr flush dev eth1 2/dev/null ip addr add 192.168.1.100/24 dev eth1 ip link set eth1 up ;; stop) ;; *) echo Usage: $0 {start|stop} exit 1 ;; esac exit 0操作步骤创建并写入内容bashvi /etc/init.d/S99static_ip粘贴上述内容按i进入插入模式粘贴后按ESC输入:wq保存。赋予执行权限bashchmod x /etc/init.d/S99static_ip验证脚本是否会被执行重启后。为了确认可以添加日志记录在start部分增加echo S99static_ip executed /tmp/static_ip.log。但这不是必须的。重启开发板reboot 可以ping通。ubuntu的操作Ubuntu虚拟机固化 ens33 的 IPUbuntu 目前主流使用Netplan新版本或/etc/network/interfaces旧版本。请先确认你用的是哪种bashls /etc/netplan/如果该目录下有.yaml文件如01-netcfg.yaml则使用Netplan方法。如果该目录为空或不存在则使用/etc/network/interfaces方法。方法 A使用 Netplan推荐适用于 Ubuntu 18.04编辑配置文件通常为/etc/netplan/01-netcfg.yamlbashsudo nano /etc/netplan/01-netcfg.yaml在network下的ethernets部分为ens33添加静态 IP 配置注意不要影响 ens37NAT。示例如下yamlnetwork: version: 2 ethernets: ens33: addresses: - 192.168.1.101/24 # 不要设置网关以免干扰上网 nameservers: {} # 如果有需要可添加 DNS一般不需要 ens37: dhcp4: true # 保持 NAT 网卡自动获取保存文件然后应用配置bashsudo netplan apply方法 B使用启动脚本如果 interfaces 方法不支持如果你的开发板没有/etc/network/interfaces可以将配置命令加入启动脚本例如在/etc/rc.local中exit 0之前添加bashifconfig eth1 192.168.1.100 netmask 255.255.255.0 up并确保/etc/rc.local可执行。重启 Ubuntu 或开发板后再次执行ifconfig检查 IP 是否自动生效。