Saya menjalankan Debian 8 menggunakan vServer. Setelah menginstal buruh pelabuhan dan mengaktifkan IPv6 saya mencatat sesuatu yang aneh. Saya tidak tahu apakah buruh pelabuhan ada hubungannya dengan ini, hanya saja saya perhatikan masalah ini setelah menginstalnya.
Rute default saya dikonfigurasi untuk kedaluwarsa setelah ca. 1800secs. Saya benar-benar menghilang setelah batas waktu ini. Ini adalah saat saya (jelas) kehilangan konektivitas IPv6.
root@wopr:~# ip -6 route
xxxx:yyyy:zzz:xxxx::/64 dev eth0 proto kernel metric 256
fe80::/64 dev eth0 proto kernel metric 256
fe80::/64 dev br-5c1ce68ea951 proto kernel metric 256
fe80::/64 dev br-61f6bbfdbe87 proto kernel metric 256
[a lot more routed for my docker containers]
default via fe80::1 dev eth0 proto ra metric 1024 expires 1259sec hoplimit 64
Mengapa router dikonfigurasi untuk kedaluwarsa setelah 1800 s? Di mana saya bisa mengkonfigurasi ini?
[sunting 2016-05-14 16:08]
Menambahkan rute default secara manual tampaknya berfungsi dengan baik. Itu tetap tinggal. Tetapi saya perlu memiliki rute yang tidak kedaluwarsa setelah boot.
[sunting 2016-05-14 16:13]
Mesin ini berjalan pada host KVM yang di-host oleh netcup.de. Itu menggunakan driver virtio, seperti yang direkomendasikan oleh penyedia saya.
root@wopr:~# cat /etc/network/interfaces
auto lo
iface lo inet loopback
iface lo inet6 loopback
auto eth0
iface eth0 inet dhcp
iface eth0 inet6 static
address xxxx:yyyy:zzz:xxxx::1
netmask 64
gateway fe80::1
kebajikan-apa yang dikatakan:
root@wopr:~# virt-what
kvm
[edit 2016-05-14 15:34]
Sepertinya saya ketinggalan yang net.ipv6.conf.default.autoconf
diatur ke 1. Sekarang saya menambahkan file di /etc/sysctl.d untuk menekan ini saat boot:
root@wopr:~# cat /etc/sysctl.d/ipv6.conf
net.ipv6.conf.default.accept_ra=0
net.ipv6.conf.default.autoconf=0
net.ipv6.conf.all.accept_ra=0
net.ipv6.conf.all.autoconf=0
net.ipv6.conf.eth0.accept_ra=0
net.ipv6.conf.eth0.autoconf=0
Jawaban:
Sepertinya saya melewatkan net.ipv6.conf.default.autoconf disetel ke 1. Menambahkan file di /etc/sysctl.d untuk menekannya saat boot menyelesaikan masalah untuk saya:
Sekarang saya mendapatkan rute defaualt yang tidak akan kedaluwarsa pada saat boot. Masalah terpecahkan. Terima kasih telah mengarahkan saya ke arah yang benar, Sander.
sumber
1800 detik terdengar seperti batas waktu default untuk Iklan Router.
Dugaan pertama saya adalah ada router Cisco di jaringan yang dikonfigurasi dengan
ipv6 nd ra suppress
antarmuka. Dalam mode itu router akan mengirimkan RA ketika host meminta satu dengan RS, tetapi tidak menyegarkannya secara teratur. Host mengirim RS ketika membuka antarmuka, yang akan menjelaskan mengapa ia mendapatkan rute default setelah boot.Pengaturan itu adalah pengaturan Cisco tidak berguna yang aneh. Perute harus mengirim RA ketika ditanya + secara teratur (default pada Cisco), atau tidak sama sekali (
ipv6 nd ra suppress all
). Pengaturan setengah jalanipv6 nd ra suppress
menyebabkan perilaku aneh seperti ini dan tidak boleh digunakan.sumber
accept_ra=0
ditetapkan.Sebenarnya, jawaban yang ditandai salah. Masalahnya adalah bahwa buruh pelabuhan memungkinkan penerusan pada antarmuka dan yang membuat kernel Linux mengabaikan RA pada antarmuka tertentu, lihat: https://www.mattb.net.nz/blog/2011/05/12/linux-ignores -ipv6-router-advertisements-when-forwarding-diaktifkan /
Jadi, solusi yang benar dalam hal ini adalah mengatur
accept_ra
ke2
:alih-alih sepenuhnya menonaktifkan penemuan rute.
sumber