目的
Module-LLMのデバック基板のイーサネットアダプタは、MACアドレスが起動毎に変化するため、DHCPでIPアドレスを割り振っている場合に、再起動をかけるとIPアドレスが変化してしまいます。
これはSSHやSambaでアクセスするときに面倒なので、IPアドレスを固定する方法を調べました。
調査結果
Module-LLMは、DNSにより、ホスト名 m5stack-LLM.local で接続することができます。
WindowsだとPowerShell開いて以下で参照できます。
> Resolve-DnsName m5stack-LLM.local
Name Type TTL Section IPAddress
---- ---- --- ------- ---------
m5stack-LLM.local AAAA 120 Answer fe80::f499:b3ff:fe7b:97fb
m5stack-LLM.local A 120 Answer 192.168.20.6
2つ目買って後から届いたModule LLM 元々新しいファームが入ってるのね(いまさらw)
— わしし (@washishi) January 12, 2025
あとDHCPでIP分からん問題がmDNSで解決されてる
ホスト名 m5stack-LLM.local で繋がる
WindowsだとPowerShell開いて
Resolve-DnsName m5stack-LLM.local
で引けます
※複数持ってる人はホスト名変えましょうw
以下の方法は、Module-LLMではうまく設定できなくなりました。
12月にM5Stackがリリースしたファームウェア(M5_LLM_ubuntu_v1.3_20241203-mini)にしてから、DNSが有効になりましたが、その代わり、以下の方法でのhwaddressでMACアドレス固定するとDHCPが失敗するようになりました。(2025/1/18)
@ciniml 氏が見つけた方法が一番良さそうだとなりました。
MACアドレスを固定する
ifconfigでMACアドレスを調べます。Module-LLMのMACアドレスは、"aa:f6:f8:b8:45:b6"となっていました。これが再起動するごとに変わってしまいます。
root@m5stack-LLM:~# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.20.6 netmask 255.255.255.0 broadcast 192.168.20.255
inet6 fe80::f8c2:69ff:fe35:455c prefixlen 64 scopeid 0x20<link>
ether aa:f6:f8:b8:45:b6 txqueuelen 1000 (Ethernet)
RX packets 760 bytes 73762 (73.7 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 753 bytes 68037 (68.0 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 27
/etc/network/interfacesで、Module-LLMのMACアドレスをhwaddressを設定します。
この時に、ネットワーク上に同じMACアドレスがいないことを確認してください。
hwaddressを設定すると、Ubuntuが起動したときに、そのネットワークインターフェースのMACアドレスが指定した値(この場合はaa:f6:f8:b8:45:b6
)に変更されます。
root@m5stack-LLM:~# vi /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
# Include files from /etc/network/interfaces.d:
source /etc/network/interfaces.d/*
allow-hotplug eth0
iface eth0 inet dhcp
hwaddress 42:11:ad:11:e7:44 #これを追加する
注意
この設定を行う際は、いくつかの重要な注意点があります。
1. 同じネットワーク内で他の機器が同じMACアドレスを使用していないか確認することが重要です。さらに、ルーターでMACアドレスフィルタリングを使用している場合、通信がブロックされる可能性があります。
2. 設定後はネットワークの再起動が必要です。
また、DHCPサーバーが新しいMACアドレスを認識するまでに時間がかかる場合もあります。
参考
I think the key reason is that, we have not bought the macaddress, so officialy we should not assign any MAC out, since they may not be unique. We should get some MAC in the future.
— HanxiaoMeow (@HanxiaoM) November 5, 2024