C# - 机器有250个ips,我只能从代码中检索50个

fel*_*bus 5 c# networking

我有一台拥有250 ips的linux(ubuntu服务器14.04)机器.当我用单声道运行我的c#代码时,它只检索50 ips.

所有的ips都配置正确,我在java中有相同的代码,并且找到了所有250个ips,并且可以绑定.

我试过了:

Dns.GetHostByName(Dns.GetHostName()).AddressList;
Run Code Online (Sandbox Code Playgroud)

Dns.GetHostAddresses(string.Empty);
Run Code Online (Sandbox Code Playgroud)

两者都返回50 ips?

所以,我的问题是,c#中有多少可以发现的ips?或任何其他原因任何人都知道为什么会发生这种情况?

Jos*_*osh 4

我建议切换到不同的方法来获取相同的数据。

System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces()
Run Code Online (Sandbox Code Playgroud)

http://msdn.microsoft.com/en-us/library/system.net.networkinformation.networkinterface.getallnetworkinterfaces%28v=vs.110%29.aspx

您要求代码执行的操作是获取当前计算机,并询问第二台服务器所有 IP 地址都已注册。相反,询问您所在的服务器的 IP 地址会更容易、更可靠。有些可能未注册到本地或远程 DNS 服务器。