簡體   English   中英

如何理解NetworkInterface和InetAddress概念?

[英]how to understand NetworkInterface and InetAddress concept?

我認為在Java中,NetworkInterface是網卡的抽象。 如果正確,為什么一個NetworkInterface包含多個InetAddress

例如我的macbook中的以下代碼:

NetworkInterface en0 = NetworkInterface.getByName("en0");
Enumeration<InetAddress> adrs = en0.getInetAddresses() ;
while(adrs.hasMoreElements()){
    InetAddress adr = adrs.nextElement();
    System.out.println(adr.getHostAddress());
}

輸出:

fe80:0:0:0:7a31:c1ff:feb7:a3a2%4
192.168.1.100

有兩個地址,但是我沒有使用IPv6。

我的問題是,如何理解這兩個概念? 他們是什么關系

為什么一個NetworkInterface包含多個InetAddress?

因為您可以配置具有多個地址的NIC。 大約二十年來一直是這種情況。

我沒有使用IPv6

有人做到了 也許您使用的是DHCP,它來自那里。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM