CentOSの特定のネットワークインターフェースでipv6 auto-configを無効にする方法を教えてもらえますか?
現在の状況は以下のとおりです。
PCには、同じLANに接続している2つのネットワークアダプタeth0とeth1があります。この場合、IPv6ルーターはNDRA(Neighbor Discovery Router Advertisements)パケットでIPv6プレフィックスをアドバタイズしています。その結果、eth0とeth1の両方がそのプレフィックスでIPv6アドレスを自動的に設定しています。
しかし、私はちょうどeth1でipv6を有効にし、eth0で無効にしたいです。以下の方法を試しましたが、うまくいきません。
NETWORKING_IPV6=no
IPV6_AUTOCONF=no
これにより、eth0とeth1の両方でipv6が無効になります。
IPV6INIT=no
IPV6_AUTOCONF=no
それなら、それはうまくいきません。私はすでにネットワークサービスを再開しました。私はこの問題について少し混乱しています。進んでくれてありがとう。
この行で/etc/sysctl.confから無効にすることができます。
net.ipv6.conf.eth0.disable_ipv6 = 1
/ proc/sys/net/ipv6/conf/eth0を見てください。 IPv6を有効にしたままautoconfを無効にするなど、そのディレクトリに設定できるオプションはたくさんあります。
$ Sudo sysctl -w net.ipv6.conf.eth0.disable_ipv6=1
廃止予定
# echo 1 > /proc/sys/net/ipv6/conf/eth0/disable_ipv6
この変更が再起動後も持続することを確実にするために、あなたは/etc/sysctl.conf
ファイルにこの行を追加したいでしょう:
net.ipv6.conf.eth0.disable_ipv6=1
/etc/sysconfig/network-scripts/ifcfg-eth0
ファイルの使用は移植性がないことに注意してください。
以下のネットワークパラメータを設定するには、rootになる必要があります。
echo 1 > /proc/sys/net/ipv6/conf/wlan0/disable_ipv6
Ifcfg-eth0またはifcfg-eth1での以下の変数の使用
IPV6INIT=no
IPV6_AUTOCONF=no
トリックをするべきです。繰り返すには:
NETWORKING_IPV6=yes
IPV6_AUTOCONF=yes
IPV6INIT=no
IPV6_AUTOCONF=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
次に、必ずネットワーキングサービスを再起動してください。
% /etc/init.d/network restart
ifconfig
を実行すると、ipv6が有効になっているイーサネットデバイス(eth0またはeth1)でinet6が見えるはずです。
% ifconfig eth0
eth0 Link encap:Ethernet HWaddr 01:26:BD:85:CA:30
inet addr:192.168.1.20 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::226:c7ff:fe85:a720/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2497072 errors:0 dropped:0 overruns:0 frame:0
TX packets:2253781 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2004576667 (1.8 GiB) TX bytes:1296051472 (1.2 GiB)