回答:
自動構成は、eth1に対して一時的に無効にできます:
sudo sysctl -w net.ipv6.conf.eth1.autoconf=0
sudo sysctl -w net.ipv6.conf.eth1.accept_ra=0
または、以下のすべてのインターフェースに対して:
sudo sysctl -w net.ipv6.conf.all.autoconf=0
sudo sysctl -w net.ipv6.conf.all.accept_ra=0
再有効化は、呼び出しで0ではなく1を使用することで機能します。
へのエントリを使用して、永続的に無効にすることができます/etc/sysctl.conf
。Debian Etch(おそらく新しいものでも)では、を設定せずaccept_ra
に、システムはLinkローカルアドレス(fe80..
)を使用して自動構成します
GARTは、後述するようにホスト自体がルータであるとすれば、自動アドレス設定とルータ発見が無効になりますaccept_ra
ではありません2
つまり、
net.ipv6.conf.<iface|all|default>.forwarding=1
そして
net.ipv6.conf.<iface|all|default>.accept_ra=0
またはnet.ipv6.conf.<iface|all|default>.accept_ra=1
。
iface
インターフェースはどこですか
このsysctl
ソリューションは、Ubuntu 18.04 Bionicでは機能しませんでした。次の方法で解決しました。
編集/etc/netplan/01-netcfg.yaml
、構成:
network:
...
ethernets:
eth0:
...
dhcp6: no
accept-ra: no
の代わりにインターフェイス名を使用する必要がある場合がありますeth0
。ファイルを保存したら、次を実行します。
netplan apply
または reboot
自動設定からIPv6 IPをすでに受信していて、再起動せずに削除する場合は、次を実行できます。
ip -6 addr del 1111:2222:1:0:aaaa:bbbb:cccc:dddd/64 dev eth0
もちろん、このコマンドでIPとデバイスを交換する必要があります。
Ubuntu 18とipv6の問題は、systemd-networkdがカーネルパラメーターを制御することです。そのため、sysctlを使用してipv6を無効にすることもできますが、設定がそうでない場合、networkdはそれらを有効に切り替えるだけで十分です。
ipv6を無効にする私の解決策は、ネットプランでリンクローカルを空のスカラーに構成することです(リンクローカルipv4 IPがない場合)。
network:
version: 2
renderer: networkd
ethernets:
eth0:
..
link-local: [ ]
この構成は、/ run / systemd / network / 10-netplan-eth0.networkに投稿されるnetworkdの構成をコンパイルし、eth0にipv6を設定しないようnetworkdを説得します。
ループバックでもipv6を無効にする場合は、カーネルパラメーターnet.ipv6.conf.all.disable_ipv6を1に設定することで簡単に実現できます。networkdはループバックを制御していないようです。
sysctl -w net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.all.forwarding=1
設定されている場合、自動アドレス構成とルーター検出は無効になります。