そのため、プログラムが実行されているマシンのLAN IPアドレスを取得し、UDPを介して渡されたIPアドレスと比較しようとしています。
ただし、使用する場合:
print str(socket.gethostbyname(socket.gethostname()))
127.0.0.1を返します。これは192.168.1.9である必要があります。
Linuxマシンを調べて、lo(loopBack)ポートのIPアドレスを取得しましたか?それが何であるか正確にはわかりませんが、eth0のIPアドレスを取得しているはずです。
bashコマンド「ifconfigeth0」をサブプロセスできることがわかりましたが、それは文字列の大きなブロックを返します。必要なものまで処理できますが、これはビーグルボーンで1秒間に約3回実行されるので、もう少し効率的にしたいと思います。
これを行うためのよりエレガントな方法はありますか?
gethostnameのターゲットを変更できますか?
なぜそれはloポートをターゲットにしているのですか?
あなたの助けのマナーをありがとう。