Rasperry Pi 上の Raspbian Linux で DHCP クライアントを無効にする方法はありますか?

Rasperry Pi 上の Raspbian Linux で DHCP クライアントを無効にする方法はありますか?

静的 IP のみを使用する必要がある Linux サーバー (OS として Raspbian を使用する Rasperry Pi) があります。

しかし、DHCP サーバーからも IP を取得していることに気付きました (DHCP によって付与される IP は です192.168.111.2)。ネットワーク設定によると、サーバーは静的 IP ( 192.168.111.100) のみを使用する必要があります。

内容/etc/network/interfaces

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.111.100
netmask 255.255.255.0
gateway 192.168.111.1
dns-nameservers ip1 ip2

静的構成を使用しているにもかかわらず、DHCP によって割り当てられた IP を使用してデバイスに SSH 接続できます。また、ntpd正しい IP だけでなく間違った IP も使用しているようです。

Netstat の出力:

udp        0      0 192.168.111.2:123       0.0.0.0:*                           2774/ntpd
udp        0      0 192.168.111.100:123     0.0.0.0:*                           2774/ntpd

ifconfigIPによると、192.168.111.2使用されていません:

eth0      Link encap:Ethernet  HWaddr b8:27:eb:be:18:1c
          inet addr:192.168.111.100  Bcast:192.168.111.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:138099 errors:0 dropped:0 overruns:0 frame:0
          TX packets:81146 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:95954711 (91.5 MiB)  TX bytes:27076870 (25.8 MiB)

ps -ef | grep dhcpDHCP デーモンが実行されていることがわかります:

root      2000     1  0 Oct07 ?        00:00:06 /sbin/dhcpcd

DHCPデーモンの起動を無効にして、サーバーが静的のみを使用するようにするにはどうすればよいですか?

答え1

このシナリオは、静的IPが設定されていれば、説明どおりに動作するはずであり、動作することを期待しているため、非常に奇妙に聞こえます/etc/network/interfaces。とはいえ、Raspberry Pi公式サイトでのこの議論この問題に焦点を当てているのは、ユーザー「rpdom」が「2015年5月28日木曜日午前6時21分」の投稿で次のように述べていることです。

これは最新のアップデートで発生します。これは、新しい DHCP クライアントがインターフェイス ファイルの動作を無視し、さらに独自の動作を実行するために発生します... 私にはおかしいように思えます。DHCP クライアントを再設定する方法 (どのクライアントか、またその方法は思い出せません。まだ古いクライアントを使っていますが、私にとっては問題なく動作しています)、DHCP クライアントを無効にする方法、または削除する方法 (可能な場合) を検討します。

スレッドの奥深くでユーザー「KLL」が示唆している次の他の投稿「2015年8月10日月曜日午後12時59分」の返信で、「knute」によると:

アップグレードの途中で、 /etc/network/interfacesdhcp または static の代わりに 'manual' という単語を使用してファイルが変更され、静的 IP アドレスと dhcp アドレスの 2 つの IP アドレスが作成されました。ようやく時間ができ、 dhcpcd5以前のものとは異なる動作をすることがわかりました。静的アドレスだけを取得するには、 を変更しないでください。変更した場合は 'manual' という単語を元に戻し、ドキュメントの例のように/etc/network/interfaces変更してください 。/etc/dhcpcd.conf

dhcpcd5つまり、 の動作はアップグレードの 1 つで変更されたと考えられます。 この問題を解決するには、 からの変更をすべて削除し/etc/network/interfaces、代わりに の設定を調整して/etc/dhcpcd.conf静的 IP アドレスを取得することをお勧めします。設定例を以下に示します。

static <value>
             Configures a static <value>.  If you set ip_address then dhcpcd
             will not attempt to obtain a lease and just use the value for the
             address with an infinite lease time.

             Here is an example which configures a static address, routes and
             dns.
                   interface eth0
                   static ip_address=192.168.0.10/24
                   static routers=192.168.0.1
                   static domain_name_servers=192.168.0.1

内容の詳細についてはdhcpcd.conf公式マニュアルページ

とはいえ、別のアイデアとしては、 の設定を保持した/etc/network/interfacesまま、の/etc/dhcpcd.conf行を追加して編集しdenyinterfaces eth0、DHCP デーモンに を完全に無視するように指示する方法がeth0あります。どちらの解決策も機能するはずですが、全体的なネットワークのニーズ/要件によっては、1 つの解決策の方が適している場合があります。

答え2

私の場合は、元の質問のように /etc/network/interfaces を使用し、DHCP クライアントを削除するだけでうまくいきました。

apt-get remove dhcpcd5 isc-dhcp-client isc-dhcp-common

答え3

dhcpcd などのサービスを無効にするには、システム管理機能を使用するのが望ましい方法です。サービスも停止しない限り、有効にするには再起動する必要があります。

Jessie(管理を使用systemd)の場合:

sudo systemctl disable dhcpcd.service

そして、古いWheezy(System-V管理)の場合:

sudo update-rc.d dhcpcd disable

ただし、これを無効にする場合は、静的 IP 構成が設定されていることを確認する必要があります。/etc/network/interfacesそうしないと、インターフェイスに IP アドレスが割り当てられません。

答え4

Raspbian Jessie 2017-01-11 で必要な作業の概要は次のとおりです。

/etc/network/interfaces を編集して静的アドレス スタンザを追加し、静的インターフェイス (この場合は eth0) への他の参照を削除します。auto 行は重要です。そうしないと、インターフェイスが起動時に開始されません。

    auto eth0
    iface eth0 inet static
      address 192.168.44.17
      netmask 255.255.255.0
      gateway 192.168.44.27

次に、dhcpcd を無効にして、標準ネットワークを有効にします。

  • dhcpcd を無効にする:systemctl disable dhcpcd.service
  • ネットワークを有効にする:systemctl enable networking
  • リブート

2017-01-11リリースのRaspbian Jessieはsystemdのネットワークを使用していないようです

関連情報