web-dev-qa-db-ja.com

RaspberryPi上のAlpineLinuxで静的IPアドレスを変更した後、ネットワークがありません

RaspberryPiでAlpineLinuxを実行しています。静的IPアドレスを設定しようとしています。そこで、/etc/network/interfacesファイルの内容をから変更しました

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto lo
iface lo inet loopback
    address 192.168.0.137
    netmask 255.255.255.0
    gateway 192.168.0.1

/etc/resolv.confファイルの内容は次のとおりです。

nameserver 8.8.8.8

その後、私は走ります

ifdown eth0
ifup eth0

aaaそして私はネットワークを持っていません。何をしても何にも接続できません。ルーターにpingを送信することすらできません。しかし、デバイスを再起動すると、突然すべてが新しいIPアドレスで機能します。 DHCPに戻そうとしたときにも同じことが言えます。

だから私の質問は-再起動後に新しいIPアドレスが機能するのになぜそうでないのかという考えはありますか?再起動中に何が起こりますか?それはインターフェースのリロードでは起こりませんか?再起動せずに動作させたい。ありがとう!

追加情報

友人のネットワークでテストできましたが、そこでは問題なく動作しているようです。追いつくまでには少し時間がかかりますが、最終的にはネットワークなどすべてに接続できるようになります。それが何であるかはわかりませんが、ルーターと関係があることがわかります。私はTP-LinkArcherC5を持っています。

追加情報2

ここで提案されているようにifconfigを試しましたが、新しいIPアドレスを取得し、LANで通信できたため、最初は機能すると思いました。しかし、それでもインターネットに接続できないことがわかりました。

1
Michal Artazov

問題の背後にある理由は、起動プロセスをデバッグせずに判断するのは難しいですが、それが私の最善の推測です。

  • RaspberryPi 3以下のネットワークカードは、USB経由でマザーボードに接続されています。ダウンが原因でエネルギー状態になっている可能性がある場合は、再起動しないと回復できません(これはおそらく原因ではありません)。
  • アルパインディストリビューションはラズベリーへの移植が不十分であり、ifdownがネットワークカードを適切にシャットダウンしておらず、回復不可能な状態(電気的または論理的)のままになっています

考えられる解決策:

代わりにネットワークサービスを再起動してください。あなたが言ったように、それはifdown/ifupに依存しているので、この場合は機能しませんが

コマンド:

Sudo systemctl restart networking

Ipconfigを使用して、ifdown/ifupを使用せずにネットワークカードを構成します。この設定は再起動時に失われるため、ファイルを手動で変更する必要があります。

Sudo ifconfig eth0 192.168.0.137 netmask 255.255.255.0 broadcast 192.168.0.1
2
DGoiko