Apr 10, 2025
LAN ネットワークを見直してみた 7-2(GS105EによるVLANの挙動について - 13日、追記)
前回のエントリーでこんなことを書いた。
オーディオ再生が途切れたら、Middle-Endへの道が切れる。mpdサーバーからのpingが通らなくなる。
GS105EのVLAN設定を解除したら、つながる。その後、再設定したら、つながったまま、音も出る。音を止めたら、そのうち、途切れる。
どうやら、DHCPサーバーからの経路がVLANで切れているので、IPアドレスをロストするのが原因ではないかと考えた。
Middle-EndはDHCPサーバーからアドレスを振っていたので、これを機会に固定した。
これで安定したらいいんだけど。
前回エントリーではこういう感じで、GS105Eの拡張ポートベースVLANというのを使ってLANを分離してみたら、音は悪くないけど途切れるというところまで。
Middle-EndでIPアドレスを固定しても、経路を見失うようだ。
いつ起きるか、予測は難しい。
DHCPサーバーから見えないからロストするのかな。スイッチングハブにMiddle-EndのMACアドレスの記憶はあるんじゃないかと思うのだけど、それもなくなるのだろうか。
追加の対策としてDHCPサーバー(ONU兼用)にMiddle-Endの固定IPアドレスを登録したが、変化なし。
オーディオで音を出そうとしてつながってないのに気付くのは癪なので、その前にMPDサーバーからMiddle-Endにpingを打って、つながってるかどうか確認するようになった。
しかし、それでも万全ではない。
音を鳴らしていて、突然に接続が切れることがある。確認したらpingが通っていない。
VLANの設定を解除したら音が出る。VLANを再設定する。何事もなかったかのように音は鳴り続ける。
どうなってるんだろう。
オーディオ再生、つまりデータ転送が途切れたら経路が途切れやすいとか、そういうわけではないのだ。関係なく途切れる。
VLAN設定解除後に、pingを打つでもmpdで音を出すでもいいようだが、信号を送ることで経路が再開通するらしい。その後、VLAN再設定したら開通した経路がしばらくは維持される。
VLAN設定解除して、比較的短時間、何もせず待ってからVLAN再設定したら、経路は閉じたままでpingも通らない。
数分以上(正確な時間はわからない)待ってVLAN再設定したら、経路は通じている。この場合、多分、DHCPサーバーがMiddle-Endを見付けてIPを確認しているのではないかと思う。
音を鳴らしている途中でも急に経路が閉じることがあるのだから、経路閉鎖にデータ伝送の有無は関係がない。
何かタイマーのようなものが何処かで設定されているか、経路を維持させる何かが欠損しているのか、なにか原因があるということなのだろう。
DHCPのリース期間の問題とかだろうか。
DHCPサーバのIPアドレスのリース期間設定の考え方 | TechNote
https://technote7.com/dhcpserver-iprerease/
それとも、これだろうか。
Keepalive - Wikipedia
https://en.wikipedia.org/wiki/Keepalive
パケット送信して経路を確認するという。TCPキープアライブはデフォルトでは無効ということだけど、どうなんだろう。
しかし、何が原因なのか、分かってない人が一人で考えても調べても、よくわからないものはわからないのだった。
VLANのON/OFFで、音の差は、少ないと言えば少ない。
最初はブラインドでは区別がつかないと思った。しかし切り替えながら聴いたら確かに違う。この音質に慣れたら戻れなくなるだろうという気がする。繊細な部分の表現が違うのは確かだからだ。差異を具体的に指摘しろと言われたら難しいが、音の心地よさという意味では、それなりの差異を感じる。ネットワーク分離せずに鳴らすと潰れる階調が、分離したらきれいに見えてくるというのか、そういう聴こえ方だ。
そんなわけで、適宜、オーディオを聴くときにpingでネットワークの開通を確認するようにして、様子を見ていた。面倒といえば面倒だが、処方箋が見つからないのでしかたがない。
そうこうするうち、GS105Eのファームウェアが古いせいかも知れないと思い至った。
昔だったら、Windows用の設定ユーティリティを使うのが簡単だったらしいんだけど、うちには自分用のWindows機は無いので、アップデートが面倒でそのままにしていた。今回、アップデートしようとしたら設定ユーティリティは古くてサポートが切れているので、tftpというのを使わないといけなくて、いよいよ面倒だった。
一応、手順をメモ。Version 1.3.0.3から1.6.0.15へのアップデートだ。
dnf -y install tftp-server tftp systemctl start tftp.socket sudo cp '/home/ab/Downloads/firmware/GS105Ev2_V1.6.0.15/GS105Ev2_V1.6.0.15.bin' /var/lib/tftpboot ls /var/lib/tftpboot sudo chmod 777 /var/lib/tftpboot/ systemctl status tftp.socket systemctl enable tftp.socket systemctl stop tftp.socket systemctl status firewalld systemctl stop firewalld systemctl start tftp.socket
コマンドだけで何書いてるかわからないかも知れないけど、備忘録なので、まあいいだろう。
tftpを普段使用のノートPC(Fedora OS)にインストールして、ファームウェアを落としてtftpから見えるようにして、ファイヤーウォールを止めて、tftpを動かして、それでウェブブラウザ上のGS105Eのインターフェイスからtftpで繋いでファームウェアをインストールできる。
いくつかサイトを参考にした。
3台あるGS105Eのうち1台はVersion 1.5.0.5からのアップデートで手順が違っていた。これはhttp経由、ウェブブラウザ上でできて簡単だったので省略。
アップデートで、明確な音の変化は感じ取れない。
さて、これで問題は解決するのかというと、解決しない。
やっぱり気付くとMiddle-Endへの経路が途絶している。
次に、省電力モードというのを止めてみた。
しかしこれ、Version 1.4.0.6から追加された機能らしいので、Version 1.3.0.3から続いている問題とは関係ないかも知れない。
そして、やはり関係ないのであった。
あとできるのは、ハードの故障確認のためLANポートの変更、ハブの変更。それから、Tiny Core、PPAP方式固有の問題を検討する、かな。後者はハードルが高い。面倒すぎるので多分そこまではしない。
まずポートを変更してみる。
GS105Eの5番ポートにつないでいたMiddle-Endに向かうLANケーブルを、1番ポートに移動。VLANの設定を組み直す。
これでどうだろう。
1日経って、やはり途切れる。
うちにはGS105Eが3台あるので他のに替えてみる。3台あるうち、生産された時期が新しめの機体にする(シリアル番号とか、出荷時にインストールされていたファームが新しかったことで分かる)。
結果は同じ。1日経って途切れる。
あれこれ繰り返すうちに24時間程で切れるのか?と思うようになった。
DHCPサーバーのリース時間設定が24時間になっている。
これを、試しに1時間にしてみる。1時間で接続が切れるかと思ったら、切れない。
関係ないのかな。
とりあえず様子を見る。
24時間後かどうか分からないが、だいたい1日経って途切れたな、と思ったら、1時間ぐらいしてまた途切れた。早い。24時間で切れるというのは、たまたまそう感じただけで、実際はそういうわけではないようだ。
拡張ポートベースVLANの説明を見直してみる。
https://www.netgear.jp/support/download/tips/unmangedplus_portvlan.pdf
この説明書のイラストで、共有されている8番ポートはインターネットにつながっているということに思い至る。つまり8番ポートの先にあるのはルーターだ。2つのネットワークがともにルーターにアクセスできているということになる。
うちのVLAN設定では、共有されているのはMPDサーバーのポートだ。
これらはインターネットにはつながっていないし、ルーターでもない。
ルーターは、うちでは2番ポートの先にあるONU兼DHCPサーバーだ。これはPPAP Middle-Endにはつながらない。
ということは、MPDサーバーにルーター機能を持たせたら、切れないようになるんだろうか。
いやいや、ポート1つしかない機械でルーター機能って無理でしょ。WiFiルーター化というのがあるらしいが、そうなるとMiddle-EndをWiFiでつなぐことになる。なんだか複雑化するばかりで何やってるのか分からない。
話はちょっとそれるが、うちではPPAP Middle-Endで3つのネットワークをつないでいる。つまり、Middle-Endはルーターのようなものとして働いているということだ(apu2シリーズで本来想定された使い方にルーターがある)。
一般的なルーターの実装については知らないけど、うちのMiddle-Endではネットワーク間をつないでいるソフトがncatということで、たぶんルーターとして見たらイレギュラーな仕様だろうと思う。イレギュラーとはいえ、2重ルーター状態と言って言えなくもない。
そこにルーターを足したら3重になる。どうなんよ。
拡張802.1Q VLANも試みたが、これは全くつながらなかった。こうなると、拡張ポートベースVLANでつながっている方が不思議なのかも知れない。
弱りましたな。
まあ、仕方ないので、いちいち確認してつなぎながら使っていこうと思う。
DHCPサーバーのリース時間設定を72時間(最長)に設定した。変化はありやなしや。
13日、追記。
3日経って、途切れた。ここだったか。
しかしリース時間を0にして、再リースを止めることはうちのサーバーでは出来ない。
Raspberry PiをDHCPサーバーにしようかとも思ったが、トラブルのリスクは上がりそうなので、やめておくことにした。追々、様子を見ながら検討していく。