2

我在源代码中使用 csharp 进行了 ip 检查。

现在,我必须考虑关于 ipv4 和 ipv6 的检查规则。

客户端可能像↓</p>

・only ipv4

・only ipv6

・both ipv4 and ipv6

对不起,我是网络新手。

因此,有人可以给我一些关于ip检查的建议吗?

谢谢。

关于IP检查:

我现在有一张像↓这样的支票:

bool isgoodip() 
{
  return ip.startwith(173); 
}

如果客户端只有 ipv6,我该怎么做这样的检查?

并且,是否有服务器设置可以将 ipv6 自动转换为 ipv4?

4

1 回答 1

6

使用语句

using System.Net;
using System.Net.Sockets;

IP校验码

IPAddress address = IPAddress.Parse("127.0.0.1");

if (address.AddressFamily == AddressFamily.InterNetwork) // IPv4
{
    // do ipv4 stuff here
}

if (address.AddressFamily == AddressFamily.InterNetworkV6) // IPv6
{
    // do ipv6 stuff here
}

if ((address.AddressFamily == AddressFamily.InterNetwork) || (address.AddressFamily == AddressFamily.InterNetworkV6)) // IPv4 and IPv6
{
    // do both ipv4 and ipv6 stuff here
}
于 2011-07-07T02:41:10.273 回答