私のrasbperry pi(4b 8GBバージョン)では、DHCPは常にランダムに停止しているようです。ターミナル(sudo dhcpcd)から再起動でき、しばらくの間正常に動作して再び停止します。原因は何ですか?どうすれば解決できますか?
DHCPCDが実行されなくなったことをどのように確認したかを明確にするには、次のようにします。
- Wi-Fi 選択は利用できず、「dhcpcd は実行されません」と表示されます。
- HTOP は、root として実行しても DHCPCD プロセスをリストしません。
dhcpcd -y 0
何もしませんが(通常はDHCPCDを再起動します)、実行するとDHCPCDが起動してsudo dhcpcd
Wi-Fiに接続できるようです。- この「衝突」動作が発生すると、Wi-Fiを必要とするすべての項目(SSH、xrdp-VNC、およびSamba)がすぐに動作を停止します。
Distro: Raspbian OS 10 (Debian Stretch ベースだと思う)
DHCPCD バージョン: 8.1.2
コンパイル機能: INET ARP ARPing IPv4LL INET6 HHCPv6 AUTH
構成ファイルをまったく変更しませんでした。これはRaspbianを新しくインストールしたものです。
ログの最後の16行(ホスト名はここで確認されています):6月14日19:16:46 sk*****berry dhcpcd [10428]:wlan0:ハードウェアアドレス00:00:00:00:00:00 Claims 192.168。 0.230
Jun 14 19:17:06 sk******berry dhcpcd[10428]: wlan0: ハードウェアアドレス 00:00:00:00:00:00 クレーム 192.168.0.230
(上記の行は 11 回繰り返されます。)
Jun 14 19:41:26 sk******berry dhcpcd[10428]: wlan0: 192.168.0.23 6月14日 19:41:26 sk******berry dhcpcd[10428]: wlan0: 10 2 次防御 192.168.0.0/24 へのパスの削除に失敗しまし
た
答え1
あなたは言う、「DHCPは常にランダムに停止しているようです」しかし、「停止」と判断した方法は明らかにしていません。全く止まったのか疑わしかったのに、止まったforking to run in the background
(参考資料man dhcpcd
)。以下を確認(または拒否)できます。
systemd
ログを確認し、journalctl
ポケットベルの一番下までスクロールして最新のエントリを見つけます。
journalctl --unit=dhcpcd | less
... [scroll to end of pager ...]
-- Boot 5687a151f68246acbe8c6bd12cd0798e --
Jun 09 09:52:46 raspberrypi3b systemd[1]: Starting DHCP Client Daemon...
Jun 09 09:52:46 raspberrypi3b dhcpcd[374]: dev: loaded udev
Jun 09 09:52:46 raspberrypi3b dhcpcd[465]: wlan0: starting wpa_supplicant
Jun 09 09:52:46 raspberrypi3b dhcpcd-run-hooks[479]: wlan0: starting wpa_supplicant
Jun 09 09:52:47 raspberrypi3b dhcpcd[374]: wlan0: connected to Access Point `'
Jun 09 09:52:47 raspberrypi3b dhcpcd[374]: eth0: waiting for carrier
Jun 09 09:52:47 raspberrypi3b dhcpcd[374]: wlan0: waiting for carrier
Jun 09 09:52:53 raspberrypi3b dhcpcd[374]: wlan0: carrier acquired
Jun 09 09:52:53 raspberrypi3b dhcpcd[374]: wlan0: connected to Access Point `Mesh01'
Jun 09 09:52:53 raspberrypi3b dhcpcd[374]: wlan0: soliciting a DHCP lease (requesting 192.168.1.143)
Jun 09 09:52:53 raspberrypi3b dhcpcd[374]: wlan0: offered 192.168.1.143 from 192.168.1.1
Jun 09 09:52:53 raspberrypi3b dhcpcd[374]: wlan0: probing address 192.168.1.143/24
Jun 09 09:52:58 raspberrypi3b dhcpcd[374]: wlan0: leased 192.168.1.143 for 7200 seconds
Jun 09 09:52:58 raspberrypi3b dhcpcd[374]: wlan0: adding route to 192.168.1.0/24
Jun 09 09:52:58 raspberrypi3b dhcpcd[374]: wlan0: adding default route via 192.168.1.1
Jun 09 09:52:58 raspberrypi3b dhcpcd[374]: forked to background, child pid 606
Jun 09 09:52:58 raspberrypi3b systemd[1]: Started DHCP Client Daemon.
上記の手順は、dhcpcd
最後の起動以降に記録された内容を示しています。典型的なdhcpcd
私の経験によると。
メモ項目forked to background, child pid 606
PID確認:
$ ps -p606 -o comm,unit,stat
COMMAND UNIT STAT
dhcpcd dhcpcd.service Ss
$
今 - あなたが欲しくない dhcpcd
-B, --nobackground
バックグラウンドに分岐するには、オプション(やはりref)を使用してフォアグラウンドで実行できますman dhcpcd
。しかし今、ps
上記のコマンドの出力がdhcpcd
(systemd
例:RPi内部にsystem) はデフォルトで起動プロセス中に開始されます。このユーティリティの説明は無視してかまいません。基本 /etc/dhcpcd.conf
;存在するほとんどの場合、dhcpcd
デフォルト設定ではうまく動作します。
答え2
Jun 14 19:16:46 sk******berry dhcpcd[10428]: wlan0: hardware address 00:00:00:00:00:00 claims 192.168.0.230
Jun 14 19:17:06 sk******berry dhcpcd[10428]: wlan0: hardware address 00:00:00:00:00:00 claims 192.168.0.230
(above line repeated 11 more times)
ワイヤレスネットワークにIPアドレスの競合を引き起こす障害のあるデバイスがある可能性があります。または、ワイヤレスネットワークが攻撃を受ける可能性があります。
IPアドレスハイジャック攻撃に対して実際にどのように反応するかを試したことはありませんが、dhcpcd
私の考えでは次のようになります。
あなたのdhcpcd
明らかに検出一部の他のホスト(ハードウェアアドレス00:00:00:00:00:00
自体がやや疑わしいと主張しているようです)は、当時システムが使用したのと同じIPアドレスを持っていると主張しています。
dhcpcd
IPアドレスに対する主張を守ろうとしましたが、相手は夢を見ませんでした。 IPアドレスの競合がある間は続行しようとすることは役に立ちませんので、お待ちくださいdhcpcd
。
冗長アドレス検出コードは、dhcpcd
リンクローカルアドレス(IPV4LL:169.254.0.0/16)用に作成されたように見えますが、通常のIPアドレスで実行されます。おそらく、これがdhcpcd
DHCPサーバーから新しいIPアドレスを取得しようとするのではなく、シャットダウンする原因である可能性があります。
ワイヤレスネットワークがWPA2またはより良い保護を使用していることを確認し、ネットワークパスワードを推測するのが難しいパスワードに変更したい場合があります。 WiFiの範囲内の隣人は既に現在のパスワードを知っており、今では「テレビのMr. Robotのようになる」ことができます。あなたを破ってください」。