0

IPv6 構成の状態を返すコードを書いています。IPv6 の状態を返すために呼び出すことができる Linux システム スクリプト (または C/C++ 関数) はありますか。たとえば、Auto、Manual、または DHCPv6 のようなものは、3 つの可能な状態になります。これを判断するには何らかのフラグが必要です。私は見てきました

ip -f inet6 addr show eth0 scope global | grep inet6

スコープは動的を示していますが、これは ipv6 conf の変更に応じて変更される可能性があるフラグです。出力します

inet6 <ipv6 addr> scope global deprecated dynamic

ありがとう。

4

1 に答える 1

1

インターフェースが手動で構成されたか、自動構成を使用しているか、または DHCP を使用して構成されているかを把握することが目標である場合、その情報をインターフェースから取得することはできません。通常、インターフェースはそれがどのように構成されたかを知りません。その情報は、システムのネットワーク構成でエンコードされます。

たとえば、DHCP を使用するシステムは、DHCP サーバーからリースを取得してから、ifconfigまたはを呼び出しipてインターフェイスを構成します。これは、インターフェイスを手動で構成することと区別がつきません。

RedHat っぽいシステムでは/etc/sysconfig/network-scripts、その情報を調べることができます。ifcfg-*構成を定義する一連のシェル変数を含むファイル。たとえば、/etc/sysconfig/network-scripts/ifcfg-em1私のシステムには次のものが含まれています。

IPV6INIT=yes
IPV6_AUTOCONF=yes

Debian っぽいシステムでは、同様の情報が にあり/etc/network/interfacesます。

于 2012-04-26T13:42:49.177 に答える