Назад | Перейти на главную страницу

Debian, IPv6 не назначен интерфейсу

У меня есть сервер Debian 7 с несколькими сетями и настроенными виртуальными машинами KVM:

Подсеть IPv6 разделена на / 96 сетей, чтобы назначить каждому мосту собственную подсеть.

auto hetzner0 iface hetzner0 inet static address 144.76.43.151 network 144.76.43.128 netmask 27 gateway 144.76.43.129 iface hetzner0 inet6 static address 2a01:4f8:191:439b:0:0:0:1 netmask 96 gateway fe80::1 auto hetzner1 iface hetzner1 inet static address 144.72.132.209 broadcast 144.72.132.208 netmask 29 bridge_ports none bridge_fd 1 bridge_waitport 0 bridge_stp off iface hetzner1 inet6 static address 2a01:4f8:191:439b:0:1:0:1 netmask 96

Хотя IPv4 работает отлично, IPv6 сводит меня с ума. Адрес v6 на hetzner0 назначен правильно, и я могу пинговать по всему миру. Но адрес на hetzner1 не назначается! Я могу добавить его вручную, выполнив следующие действия:

/sbin/ip -f inet6 addr add 2a01:4f8:191:439b:0:1:0:1/96 dev hetzner1

Пока это работает, выполнение этого в хук пост-ап и пре-вниз не работает ...

post-up /sbin/ip -f inet6 addr add 2a01:4f8:191:439b:0:1:0:1/96 dev hetzner1
pre-down  /sbin/ip -f inet6 addr add 2a01:4f8:191:439b:0:1:0:1/96 dev hetzner1

IPv6 включен для этого интерфейса через sysctl, в то время как самая автоматическая конфигурация отключена: ╰─$ sysctl -a | grep 'hetzner1' net.ipv4.conf.hetzner1.accept_local = 0 net.ipv4.conf.hetzner1.accept_redirects = 0 net.ipv4.conf.hetzner1.accept_source_route = 0 net.ipv4.conf.hetzner1.arp_accept = 0 net.ipv4.conf.hetzner1.arp_announce = 0 net.ipv4.conf.hetzner1.arp_filter = 0 net.ipv4.conf.hetzner1.arp_ignore = 0 net.ipv4.conf.hetzner1.arp_notify = 0 net.ipv4.conf.hetzner1.bootp_relay = 0 net.ipv4.conf.hetzner1.disable_policy = 0 net.ipv4.conf.hetzner1.disable_xfrm = 0 net.ipv4.conf.hetzner1.force_igmp_version = 0 net.ipv4.conf.hetzner1.forwarding = 1 net.ipv4.conf.hetzner1.igmpv2_unsolicited_report_interval = 10000 net.ipv4.conf.hetzner1.igmpv3_unsolicited_report_interval = 1000 net.ipv4.conf.hetzner1.log_martians = 0 net.ipv4.conf.hetzner1.mc_forwarding = 0 net.ipv4.conf.hetzner1.medium_id = 0 net.ipv4.conf.hetzner1.promote_secondaries = 0 net.ipv4.conf.hetzner1.proxy_arp = 0 net.ipv4.conf.hetzner1.proxy_arp_pvlan = 0 net.ipv4.conf.hetzner1.route_localnet = 0 net.ipv4.conf.hetzner1.rp_filter = 1 net.ipv4.conf.hetzner1.secure_redirects = 1 net.ipv4.conf.hetzner1.send_redirects = 0 net.ipv4.conf.hetzner1.shared_media = 1 net.ipv4.conf.hetzner1.src_valid_mark = 0 net.ipv4.conf.hetzner1.tag = 0 net.ipv4.neigh.hetzner1.anycast_delay = 100 net.ipv4.neigh.hetzner1.app_solicit = 0 net.ipv4.neigh.hetzner1.base_reachable_time_ms = 30000 net.ipv4.neigh.hetzner1.delay_first_probe_time = 5 net.ipv4.neigh.hetzner1.gc_stale_time = 60 net.ipv4.neigh.hetzner1.locktime = 100 net.ipv4.neigh.hetzner1.mcast_solicit = 3 net.ipv4.neigh.hetzner1.proxy_delay = 80 net.ipv4.neigh.hetzner1.proxy_qlen = 64 net.ipv4.neigh.hetzner1.retrans_time_ms = 1000 net.ipv4.neigh.hetzner1.ucast_solicit = 3 net.ipv4.neigh.hetzner1.unres_qlen = 31 net.ipv4.neigh.hetzner1.unres_qlen_bytes = 65536 net.ipv6.conf.hetzner1.accept_dad = 0 net.ipv6.conf.hetzner1.accept_ra = 0 net.ipv6.conf.hetzner1.accept_ra_defrtr = 0 net.ipv6.conf.hetzner1.accept_ra_pinfo = 0 net.ipv6.conf.hetzner1.accept_ra_rt_info_max_plen = 0 net.ipv6.conf.hetzner1.accept_ra_rtr_pref = 0 net.ipv6.conf.hetzner1.accept_redirects = 0 net.ipv6.conf.hetzner1.accept_source_route = 0 net.ipv6.conf.hetzner1.autoconf = 0 net.ipv6.conf.hetzner1.dad_transmits = 1 net.ipv6.conf.hetzner1.disable_ipv6 = 0 net.ipv6.conf.hetzner1.force_mld_version = 0 net.ipv6.conf.hetzner1.force_tllao = 0 net.ipv6.conf.hetzner1.forwarding = 1 net.ipv6.conf.hetzner1.hop_limit = 64 net.ipv6.conf.hetzner1.max_addresses = 16 net.ipv6.conf.hetzner1.max_desync_factor = 600 net.ipv6.conf.hetzner1.mc_forwarding = 0 net.ipv6.conf.hetzner1.mldv1_unsolicited_report_interval = 10000 net.ipv6.conf.hetzner1.mldv2_unsolicited_report_interval = 1000 net.ipv6.conf.hetzner1.mtu = 1500 net.ipv6.conf.hetzner1.ndisc_notify = 0 net.ipv6.conf.hetzner1.optimistic_dad = 0 net.ipv6.conf.hetzner1.proxy_ndp = 0 net.ipv6.conf.hetzner1.regen_max_retry = 3 net.ipv6.conf.hetzner1.router_probe_interval = 60 net.ipv6.conf.hetzner1.router_solicitation_delay = 1 net.ipv6.conf.hetzner1.router_solicitation_interval = 4 net.ipv6.conf.hetzner1.router_solicitations = 3 net.ipv6.conf.hetzner1.suppress_frag_ndisc = 1 net.ipv6.conf.hetzner1.temp_prefered_lft = 86400 net.ipv6.conf.hetzner1.temp_valid_lft = 604800 net.ipv6.conf.hetzner1.use_tempaddr = 0 net.ipv6.neigh.hetzner1.anycast_delay = 100 net.ipv6.neigh.hetzner1.app_solicit = 0 net.ipv6.neigh.hetzner1.base_reachable_time_ms = 30000 net.ipv6.neigh.hetzner1.delay_first_probe_time = 5 net.ipv6.neigh.hetzner1.gc_stale_time = 60 net.ipv6.neigh.hetzner1.locktime = 0 net.ipv6.neigh.hetzner1.mcast_solicit = 3 net.ipv6.neigh.hetzner1.proxy_delay = 80 net.ipv6.neigh.hetzner1.proxy_qlen = 64 net.ipv6.neigh.hetzner1.retrans_time_ms = 1000 net.ipv6.neigh.hetzner1.ucast_solicit = 3 net.ipv6.neigh.hetzner1.unres_qlen = 31 net.ipv6.neigh.hetzner1.unres_qlen_bytes = 65536

Я в отчаянии, есть ли у кого-нибудь решение для меня?

Виктор

ОБНОВИТЬ:

Я смущен, но пока я случайным образом щелкал по ссылкам с правой стороны, ища проблему, аналогичную моей, я обнаружил следующее:

IPv6 работает только после проверки связи шлюза по умолчанию.

Мое внимание привлекли следующие строки (да, мой провайдер - Hetzner Germany):

Потому что Debian без ума от того, что этого там еще нет? - Майкл Хэмптон ♦ 23 фев.

Файл предоставлен hetzner: "### Hetzner Online AG - installimage" Но это определенно моя вина, что я не увидел его в первую очередь: D. - dexstar 23 фев 2013, в 9:31

Итак, я попробовал его решение, и оно наконец сработало! Я добавил в / etc / network / interfaces, а установочный образ Hetzner не предоставляет этого:

iface lo inet6 loopback