2
我能夠檢測到所有IP地址,但我想檢測哪些IPv6地址已被棄用。我如何使用C代碼來做到這一點?可能在/proc/net/if_inet6
有這樣的信息,但我不確定這個文件中的第五列是否表明這一點。這是我的/proc/net/if_inet6
文件。如何檢測IPv6全局地址是否被棄用?
fdc2714277b700009422b252a33ddc6a 02 40 00 21 eth0
fdc2714277b70000021a4dfffedd455f 02 40 00 00 eth0
00000000000000000000000000000001 01 80 10 80 lo
fe80000000000000021a4dfffedd455f 02 40 20 80 eth0
fdc2714277b70000ec3e4b537af7f419 02 40 00 01 eth0
在其具有的條目此第五列的我的棄用IPv6地址和在第五列的條目是我的當前臨時的IPv6地址。
這表明這些值是針對rnetlink.h文件中的ifa_flags。這些HEX值是否會按照if.h文件中的預定義結構與ifa_flags值衝突,或者這裏針對不推薦使用的IPv6地址0x20是否表示設置了IFF_NOTRAILERS標誌? – neel
對不起,我不明白你在問什麼。標誌字段只包含位,這是這些標誌位的含義。 –
我認爲ifa_flags對於在/linu/if.h文件中定義的每個位都有特定的意義。根據該文件,0x20表示IFF_NOTRAILERS已設置。那麼這是否意味着,如果IFF_NOTRAILERS已設置,它會間接表明它已被棄用的IP地址?標誌在「enum net_device_flags」結構下定義。 – neel