IPv4アドレスを強制する


15

Raspberry PiをJessieにアップグレードしましたsystemd。1つの副作用は、IPv6のみを使用して接続し、IPv4アドレスを持たないことです。DHCPサーバーからIPv4アドレスを取得させるにはどうすればよいですか?

アドホックソリューションの1つはコマンドです

sudo dhclient -4 -v eth0

しかし、これは現在のセッションの間のみ続きます。


以下の答えはどれも私にとってはうまくいきませんでしたが、代わりにオンラインでsudo apt-get install isc-dhcp-client使うsudo dhclient -4 -v eth0ために使用する必要がありました。
mrswadge

私の以前のコメントへのいくつかのさらなるコンテキスト。私の状況では、sudo ifup -v eth0dhclientの呼び出しを実行したときの症状は失敗し、代わりに使用情報が表示されました。
mrswadge

回答:


9

Raspbianジェシーはもはやと呼ばれるファイルを持っていない/etc/sysctl.d-それは今だフォルダと同じ名前の。

同じフォルダ内のread-meファイルによるとREADME.sysctl、それは基本的.confに、ブート時にすべてのファイルが読み込まれ、処理されることを示しています。任意の有効なファイル名が機能しますが、提案されたlocal.confので、私はそれを使用しました。

/etc/sysctl.d/local.conf他の回答から1行を作成して追加しました。

net.ipv6.conf.all.disable_ipv6=1

これはうまくいくようです。


何か.dでは/etc何もなく、で開始するディレクトリはなかったです。ジョー・プラタノの答えにタイプミスが含まれているのか、それが実際に機能するのかはわからない(どうやらそれを疑う(それを確認する別の答えがあるようだが)。
goldilocks

2

sysctlに行を挿入して、ipv6を無効にすることができます。

echo net.ipv6.conf.all.disable_ipv6=1 > /etc/sysctl.d

これは次回の再起動後に機能します。


ターゲットファイルとしての/etc/sysctl.confです。>はファイル全体を上書きすることに注意してください!
デビッド

2

Raspbian Jessie / Jessie Liteで、/etc/sysctl.conf次のようにファイルを編集し、スイッチを追加してipv6を無効にします。

sudo nano /etc/sysctl.conf

テキストを入力してください:

net.ipv6.conf.all.disable_ipv6=1

でファイルを保存しCtrl-OCtrl-XそしてRPIを再起動します。


2

sudo nano /etc/sysctl.conf

次の行を追加して、ipv6をオフにします。

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

実行sudo sysctl -pするか、単に再起動します。


1

インターフェイスのIPv4アドレスを取得する最も簡単な方法は、/ etc / network / interfacesを変更することです。マニュアルをdhcpに設定します。これにより、eth0のIPv4アドレスも取得されます。まだ良いものが見つかりました...

    auto eth0
    allow-hotplug eth0
    # iface eth0 inet manual
    iface eth0 inet dhcp

Raspbian Jessieはdhcp(ユーザーが実際にいじっていない限り)使用せず、これによりGUI WiFiサポートが機能しなくなります。
ミリウェイズ

1

前の回答を組み合わせ、修正し、追加します。

inet6(IPV6)アドレスのみを表示し、inet(IPV4)アドレスを表示しないインターフェース(ethまたはwlan)を修正するには、構成ファイルを追加してinet6(IPV6)割り当てを無効にし、すべてのインターフェースにinetが与えられるようにします。 (IPV4)アドレス。その後、その構成ファイルが再び削除されると、インターフェースにはinet(IPV4)とinet6(IPV6)の両方のアドレスが与えられます。つまり、通常のデフォルト状態に戻ります。

ファイルを追加するには:

sudo nano /etc/sysctl.d/local.conf

そして、単一の行を追加します:

net.ipv6.conf.all.disable_ipv6=1

Ctrl-O、Y、[Return]で保存します。再起動して再度ログインします。

sudo reboot

を使用してアドレスを確認します

ifconfig

構成ファイルを削除して再起動します。

cd /etc/sysctl.d
sudo rm local.conf
sudo reboot

ifconfigで再度確認します。

ifconfig

すべてのインターフェースについて、inet(IPV4)およびinet6(IPV6)アドレスの両方を参照してください。

eth0      Link encap:Ethernet  HWaddr 00:e0:4c:53:44:58
          inet addr:192.168.1.228  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::26a5:b629:f948:92c3/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

wlan0     Link encap:Ethernet  HWaddr b8:27:eb:62:b4:7a
          inet addr:192.168.1.229  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::254c:3f61:fdc:bc49/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

そして、eth0またはwlan0のいずれかを使用してPi Zeroにもう一度SSHを実行できます。両方ともIPV4またはIPV6アドレスを使用します。


1

Raspberry PiをStretchにアップグレードしましたが、さまざまなnet.ipv6.conf.all.disable_ipv6=1回答で成功することができませんでした。

sudo dhclient -4 -v eth0ネットワーク/インターネット接続を元に戻すために手動で実行しても機能しましたが、元の投稿者が述べたように、再起動しても存続しません。

sudo ifup -v eth0呼び出されたことに気付きましたがdhclient、失敗し、正しく機能する代わりに、dhclientコマンドの使用情報が表示されていました。

回避策は、から移動してdhclient代わりにインストールすることisc-dhcp-clientです。再起動すると、このパッケージのインストール後に接続が自動的に使用可能になりました。

sudo apt-get install isc-dhcp-client
sudo reboot

0

私は同じ問題を抱えており、以下の解決策を試しましたが、これは私のPiを再起動した後に正常に動作します。

sudo nano  /etc/sysctl.d

タイプ

net.ipv6.conf.all.disable_ipv6=1

で保存^Oしますsysctl.d

sudo reboot

起動画面にip4アドレスが表示されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.