我有一个NPI iMX6ULL ARM的单板计算机运行Debian .它有两个被ifconfig列为eth0和eth1的网络端口。
它似乎忽略了我在/etc/network/interfaces中的网络配置
auto lo eth0 eth1
iface lo inet loopback
iface eth0 inet dhcp
iface eth1 inet static
address 192.168.1.254
netmask 255.255.255.0
iface usb0 inet static
address 192.168.7.2
netmask 255.255.255.252
network 192.168.7.0
gateway 192.168.7.1使用连接到dhcp服务器的eth0启动上述配置后,ifconfig报告:
eth0: flags=4163 mtu 1500
inet 10.4.10.131 netmask 255.255.192.0 broadcast 10.4.63.255
inet6 fe80::d489:7cff:feec:e09e prefixlen 64 scopeid 0x20
ether d6:89:7c:ec:e0:9e txqueuelen 1000 (Ethernet)
RX packets 478 bytes 42931 (41.9 KiB)
RX errors 0 dropped 29 overruns 0 frame 0
TX packets 30 bytes 2883 (2.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth1: flags=-28669 mtu 1500
ether d6:89:7c:ec:e0:9d txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0类似地,使用连接到dhcp服务器的eth1启动上述配置后,ifconfig报告:
eth0: flags=4099 mtu 1500
ether d6:89:7c:ec:e0:9e txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth1: flags=-28605 mtu 1500
inet 10.4.11.126 netmask 255.255.192.0 broadcast 10.4.63.255
inet6 fe80::d489:7cff:feec:e09d prefixlen 64 scopeid 0x20
ether d6:89:7c:ec:e0:9d txqueuelen 1000 (Ethernet)
RX packets 1234 bytes 118390 (115.6 KiB)
RX errors 0 dropped 58 overruns 0 frame 0
TX packets 38 bytes 3547 (3.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0如果我做了一个sudo ifdown eth1,它会报告:
ifdown: interface eth1 not configured然后sudo ifup eth1,它出现了:
debian@npi:~$ sudo ifup eth1
debian@npi:~$ ifconfig
eth0: flags=4163 mtu 1500
inet 10.4.10.131 netmask 255.255.192.0 broadcast 10.4.63.255
inet6 fe80::d489:7cff:feec:e09e prefixlen 64 scopeid 0x20
ether d6:89:7c:ec:e0:9e txqueuelen 1000 (Ethernet)
RX packets 16846 bytes 1401257 (1.3 MiB)
RX errors 0 dropped 856 overruns 0 frame 0
TX packets 65 bytes 4551 (4.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth1: flags=-28669 mtu 1500
inet 192.168.1.254 netmask 255.255.255.0 broadcast 192.168.1.255
ether d6:89:7c:ec:e0:9d txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0什么是控制我的网络配置启动。我怎么知道呢?
我确实找到了几个Google点击,讨论了我的MAC地址的问题,但这发生在这两个界面。我也试着改变我的MAC地址,但没什么改变。
发布于 2020-07-29 16:39:38
谢谢你为我指明了正确的方向。关键是我所使用的图像是基于BeagleBone图像的。
问题是connman在networkd之前控制了网络端口。在一个单元中,我能够用apt删除D3。之后,我在/etc/systemd/network/interfaces中的配置得到了正确的应用。
我的研究表明,connman是未来的发展方向,所以我也想出了如何配置它。此页面connmanctl可直接用于设置静态IP。
root@npi:~# connmanctl
connmanctl> config ethernet_00142d259a48_cable --ipv4 manual 192.168.10.2 255.255.255.0 192.168.10.1
connmanctl> config ethernet_00142d259a48_cable --nameservers 8.8.8.8
connmanctl> exit设备名称中间的十六进制字符串是设备的MAC地址。手册指定静态IP,数字是ipaddress、网络掩码和网关(网关是可选的)。
这一页也解释得很好。。不幸的是,大多数文档的目标都是配置wifi。大多数站点只是顺便提到静态寻址。
希望这能帮下一个人。
https://unix.stackexchange.com/questions/600029
复制相似问题