【问题标题】:About the ip check with ipv4 and ipv6关于 ipv4 和 ipv6 的 ip 检查
【发布时间】:2011-07-07 02:27:43
【问题描述】:

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

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

客户端可能像↓

・only ipv4

・only ipv6

・both ipv4 and ipv6

对不起,我是网络新手。

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

谢谢。

关于 IP 检查:

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

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

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

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

【问题讨论】:

  • 没有从 IPv6 到 IPv4 的“转换”——它们是完全独立的系统。我也看不出这种检查有什么用。

标签: c# ip ipv6 ipv4


【解决方案1】:

使用语句

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
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-13
    • 1970-01-01
    • 2018-09-21
    • 2011-06-09
    • 1970-01-01
    • 1970-01-01
    • 2016-09-18
    • 1970-01-01
    相关资源
    最近更新 更多