我有一台 Raspberry Pi,上面连接了两个 HUAWEI 4G Wingle E8372 加密狗。
当我使用检查他们的 MAC 地址时,ifconfig
发现他们都有相同的 MAC 地址。
我为每个加密狗分配了一个静态IP:
eth1 - 192.168.100.100
eth2 - 192.168.200.100
我遇到的问题是,有时重启后,它们的 IP 似乎已经切换了:
eth1 - 192.168.200.100
eth2 - 192.168.100.100
由于我的设置性质,这会导致互联网无法在每个加密狗上运行。
有没有什么方法可以通过 Raspberry Pi 中的 USB 端口分配 IP 地址,以便确保每个加密狗每次都有相同的 IP?
答案1
我认为我已经通过创建来解决这个问题/etc/systemd/network/01-huawei-e8372.link
:
[Match]
MACAddress=xx:xx:xx:xx:xx:xx
Driver=cdc_ether
[Link]
Description=Huawei E3872
NamePolicy=path
MACAddressPolicy=random
它会为每个匹配的设备生成一个随机的 mac 地址[Match]
,然后它会根据 udev 路径命名接口。
因此,如果我将加密狗插入其中,usb-1.1
它将命名接口enp1s0u1u1
。如果我将第二个设备插入usb-1.2
端口,它将命名接口enp1s0u1u2
。
dmesg -w
我可以通过运行并重新插入设备来检查设备插入的路径。
答案2
这里有一个混淆。eth1 和 eth2 是接口名称,而不是 MAC。192.168.200.100 和 192.168.100.100 是 Internet 地址。
我忽略了华为 4G Wingle E8372 适配器是什么。请输入
lsusb-v
查看有关 USB 上这些设备的详细信息。IP 地址的分配在此处以热插拔级别进行。然后输入
nmcli 设备显示
并查看 GENERAL.HWADDR。这可以作为使用 NetworkManager 配置每个加密狗的基础。