web-dev-qa-db-ja.com

アップストリームRAからデフォルトルートをとらないIPv6ルーターとしてのUbuntu

ホームルーターとして機能するUbuntu14.04ボックスがあります。 ISPから委任されたIPv6/64があり、RAとWIDEDHCPv6クライアントを使用してIPv6を構成しています。デフォルトルートが設定されていないことを除いて、すべてがうまく機能します。 radvdumpを使用してWANインターフェイスでRAパッケージを表示し、それを使用してデフォルトルートを手動で設定すると、すべてが完全に機能します。

この手動ルート指定をupコマンドとして/etc/network/interfacesにWANインターフェイス用に配置することはできますが(現在はそうです)、これは理想的ではありません) -ISPがメンテナンスを行うたびに、ルーターのアドレスが変更され、ルーターを再構成する必要があるようです。RAからルートを取得したいのですが、その設定を取得できないようです。何か足りない?

eth1は私のWANインターフェースであり、eth0はLANです。

sysctl設定

root@nix $ grep ipv6 /etc/sysctl.conf
net.ipv6.conf.default.forwarding=1
net.ipv6.conf.eth1.accept_ra=2         # The WAN interface
net.ipv6.conf.eth1.accept_ra_defrtr=1
net.ipv6.conf.eth0.accept_ra=0         # The LAN interface
net.ipv6.conf.all.accept_redirects = 0

ワイド構成

interface eth1 # WAN
{
  send ia-na 1;
  send ia-pd 1;
  request domain-name-servers;
  request domain-name;

  script "/etc/wide-dhcpv6/dhcp6c-script"; # does resolvconf work
};

id-assoc pd 1 {
  prefix-interface eth0 { # LAN
    sla-id 0;
        ifid 1;
        sla-len 0;
  };
};

id-assoc na 1 {
};

radvd config

interface eth0
{
        AdvManangedFlag off;
        AdvOtherConfigFlag off;
        AdvSendAdvert on;
        AdvLinkMTU 1280;
        prefix ::/64
        {
                AdvOnLink on;
                AdvAutonomous on;
        };
};

/ etc/network/interfaces

# The loopback network interface
auto lo
iface lo inet loopback

# The LAN interface
auto eth0
iface eth0 inet static
        address 172.20.0.1
        netmask 255.255.255.0

# The WAN interface
auto eth1
iface eth1 inet dhcp
iface eth1 inet6 auto
        # My current workaround:
        up ip -6 route add default via fe80::21b:edff:feb2:d481 dev eth1

どんな助けでもいただければ幸いです!

1
justinian

転送が有効になっている場合、Linuxはaccept_raをオフにします。アップストリームインターフェイス(たとえばeth0)で強制的にオンにするには、net.ipv6.conf.eth0.accept_ra = 2を使用できます。これにより、転送が有効になっている場合でも、インターフェイスはルーターアドバタイズメントを受け入れるようになります。

2
Sander Steffann