dhclientを変更してIPアドレスの取得を再試行する


10

raspberry piはdhcpでIPアドレスを取得しようとはしませんが、停電時に、rpiはdhcpサーバーよりも速く起動し、IPアドレスを取得できませんでした。このような状況では、rpiは起動しているように見えますが、IPアドレスを取得できず、再度再起動するまで、そこからdhcp要求が表示されることはありません。

dhclientは次のように実行されます。

dhclient -1 -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0

dhclientの引数を変更する方法が見つかりません。-1引数が原因である可能性があります。raspberrypiが応答を受け取るまでdhcpリクエストを再試行させるにはどうすればよいですか?

編集:これはRaspbianの「wheezy」ディストリビューションに関するものです。


1
無線LANと同じ問題。起動時にWifiルーターがオンの場合、ルーターを再起動しても問題ありません。しかし、ラズベリーの起動時にルーターがオフになっていると、IPを取得できません。よろしく

私も同じ問題を抱えています。ただし、dhclientの実行方法はわかりません。いくつかの設定はありますか、それとも何かする必要がありますか?
2016年

回答:


7

-1コマンドライン引数からを削除し、必要に応じてtimeoutとのretry値を編集/etc/dhclient.confします。man dhclient.conf詳細については、manページ()を参照してください。


問題は、言ったように、dhclientのコマンドラインを変更する方法が見つからないことです。何かが/ etc / network / interfacesを解析するため、ifupdown .debパッケージの何かによって、なんとなくブート時に魔法のように開始されるようです
nos

@nosネットワーク初期化スクリプトを見つける必要があります。手元にどこにあるか思い出せない。
Alex Chamberlain

@Alex Chamberlain dhclientを起動するためのコマンドラインが/ sbin / ifupバイナリにハードコードされていることがわかりました。そのため、この時点で代替ソリューションを探しています。
nos

申し訳ありません。とにかく、それは何のディストリビューションですか?奇妙なことに、それらをハードコードしてバイナリにします。、あなただけのソリューションワイズ既存のdhclientプロセスを殺すためにrc.localにに数行を追加し、カスタム引数などを使用して独自のを開始することができます
Munkeh

Editet the post-私はrasbpianを使用しています
nos

1

/ etc / network / interfacesの内容は何ですか?

ブート時にDHCPを照会するため、自動eth0があると想定しています。

これをallow_hotplug eth0に変更するとどうなりますか?それが正しく理解できれば、インターフェースの変更(ケーブルの挿入/取り外し)に反応するはずです。

(これはすべて私の教育を受けた推測です)。


このヒントは私にとって非常にうまく機能します。ホットプラグが可能になり、起動時間が短縮されます。ただし、「allow-hotplug eth0」と記述する必要があります。
user27164 2014

0

Jeroenによる回避策がありますhttps : //bugs.launchpad.net/raspbian/+bug/1125066

回避策を設定して再起動しました-現時点では問題ないようです。しばらくテストした後、アップデートで問題が解決したかどうかを確認します。

回避策は次のとおりです。

回避策は、/ sbin / dhclientの名前を/ sbin / dhclient-binに変更してラッパースクリプトを作成することですが、以下のテキストは/ sbin / dhclientにあり、その後chmodで777に変更します。

#!/bin/sh
/sbin/dhclient-bin -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.