LinuxにDHCPサーバーから新しいIPアドレスを再取得させるにはどうすればよいですか?


24

環境はDebianですが、答えはすべてのディストリビューションに当てはまります。


これは現在コミュニティwikiです。動作する他の方法を自由に投稿してください。
GeneQ 09

回答:


35

次のコマンドも使用できます。

dhclient -r interface

interface新しいアドレスを取得するデバイスはどこですか。

dhclient -r eth0

-r旗軍dhclient最初のリリースには、任意のあなたが持っているリース、あなたは、新しいリースを要求するために、このコマンドを使用することができます。

dhclient eth0

からman dhclient

   -r     Tell  dhclient  to  release the current lease it has from the 
          server.  This is not required by the DHCP protocol, but some 
          ISPs require their clients to notify the server if they wish 
          to release an assigned IP address.

また、それを行うための良い方法:)
フランス人

1
このコマンドの後、私のDebianは新しいIPを取得できませんでしたが、再起動後に新しいIPに割り当てられたので、うまくいきました!
ダミアン

3
私にとっては、これはリースを解放し、インターフェイスの構成を解除するだけです。その後、新しいIPは取得されません。
cgogolin

主要なインターフェースがsshである場合、これは非常に残念です...
Eric Nord

13

次のいずれかで更新する必要があります。

/etc/init.d/networking restart

または

ifdown eth0; ifup eth0

SSH接続を介して実行することはお勧めしませんが、新しいIPアドレスが返されない場合はおそらく最初の接続を使用してください。


1
SSH接続は、同じIPアドレスで数秒で接続が回復する場合、数秒の「切断」を許容します。これらの条件の下で、私は中に接続が失われたことがない/etc/init.d/networking restart...それはアップ戻ってきて5秒以上を取っていた場合でも、
エイブリー・ペイン

これには管理権限が必要ではありませんか?
ピーターモーテンセン

10

p.campbellをコメントしますが、評判が1つしかないため、最初にインストールされたインターフェイスを確認します。

ip addr

選択したインターフェースからIPを解放します(例:eth0、eth1、enp1s0、sit0、wlan0、...):

sudo dhclient -r *interface*

DHCPサーバーから新しいIPを要求します(エラー時にアラート):

sudo dhclient -1 *interface*

IPを確認します。

ip addr

Ubuntu 16.04 LTSが確認されました


4

dhcpcdツールを使用している場合:

dhcpcd -k interface
dhcpcd interface

1つ目はデーモンを停止するように、2つ目はデーモンを再起動するように言っています。


2

インターフェイスのMACアドレスが変更されていない場合、DHCPサーバーは更新時に同じアドレスを割り当てることがあります。したがって、dhclientを使用した単純なリリースと更新では、新しいアドレスが取得されない場合があります。次のコマンドを使用して、MACアドレスを変更し、新しいIPアドレスを取得します。後で元に戻す必要がある場合は、元の内容を書き留めておくことを忘れないでください。

ifconfig <interface> down
ifconfig <interface> hw ether <MAC address>
ifconfig <interface> up

これはとても役に立ちました、ありがとう!いかなる数dhclient -rまたはがifconfig down、私はそのコマンドを使用してランダムなものにMACアドレスを変更するまで、私の仕事のネットワーク上で私に新しいIPアドレスを与えませんでした。
ミグウェル

ここでも同じです。これが公式の答えです。
ジョナサンアルゲンティエーロ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.