标签: ipv6

可以获得我的公共 ipv4 和 ipv6 地址(whatsmyipaddresss.com 可以做到)这是如何做到的?

当访问我在 www 上的网站之一并显示 $_SERVER['REMOTE_ADDR'] 时,有时显示 ipv4 地址,有时显示 ipv6。很公平。我知道这种联系将是其中之一,而不是两者兼而有之。但是 - 我想获得这两个地址。像whatsmyipaddress.com 这样的网站可以同时显示这两者。有谁知道他们是如何实现这一目标的?非常感谢。

ipv4 ipv6

2
推荐指数
1
解决办法
3858
查看次数

IPv6地址压缩

我一直在压缩 IPv6 地址,但由于某种原因我无法压缩这个地址:
\n2\xe2\x80\x8bb\xe2\x80\x8b0\xe2\x80\x8b6\xe2\x80\x8b:\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b:\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b:\xe2\x80\x8b1\xe2\x80\x8bf\xe2\x80\x8b2\xe2\x80\x8bb\xe2\x80\x8b:\xe2\x80\x8bd\xe2\x80\x8b7\xe2\x80\x8b7\xe2\x80\x8bf\xe2\x80\x8b:\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b:\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b0\xe2\x80\x8b:\xe2\x80\x8b8\xe2\x80\x8b9\xe2\x80\x8bc\xe2\x80\x8be\xe2\x80\x8b

\n

这也是我压缩的:2b06::1f2b:d77f::89ce

\n

但这不起作用,我想知道为什么。

\n

compression ipv6

2
推荐指数
1
解决办法
2万
查看次数

关于ip检查ipv4和ipv6

我的源代码使用csharp进行ip检查.

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

客户端可能像↓

?only ipv4

?only ipv6

?both ipv4 and ipv6
Run Code Online (Sandbox Code Playgroud)

对不起,我是网络新手.

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

谢谢.

关于IP检查:

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

bool isgoodip() 
{
  return ip.startwith(173); 
}
Run Code Online (Sandbox Code Playgroud)

如果客户端只有ipv6,我该如何进行检查呢?

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

c# ip ipv4 ipv6

1
推荐指数
1
解决办法
4011
查看次数

如何在IRC的DCC协议中处理IPv6

在IRC DCC通信中,为了启动连接,您必须向另一个人提供IP地址和端口.但是,您如何在IPv6世界中处理这个问题?

我正在用Java编写机器人的IRC框架部分,所以我需要能够处理各种情况.似乎没有一种标准的方法来处理这个问题

我通过IPv6对现有客户进行了一些测试(两个Teredo客户端通过Ipv6连接到freenode

  • Firefox中的Chatzilla不发送任何内容.它只是没有发生任何事情
  • Xchat只是发送0作为IP地址,这是错误的.

我知道DCC协议有一些扩展,以人类可读的格式发送IP地址,但这些扩展不是标准的,也不是广泛支持的.发送0似乎不是我的机器人未来证明的合适方式.

现在我正在将IPv6地址转换为BigInteger,但另一方面弄清楚BigInteger是IPv4还是IPv6地址是不是让我感到困惑(我后来问这个怎么做).

TL; DR:在IPv6环境中处理DCC的适当方法是什么?我应该发送0,我是否应该发送任何内容并在机器人中引发其不受支持的异常,或者我应该发送怪物BigInteger?

java irc ipv6

1
推荐指数
1
解决办法
972
查看次数

如何用C++表示IPv6?

我想知道在C++中存储IPv6的最有效方法是什么?

基本上我需要一种尽可能提供灵活性的格式,以及与现有库的兼容性.我的第一个想法是使用一个简单的,std::vector<int>因为这将允许我轻松访问地址的每个部分.

这是一个好的解决方案吗?或者我以后可能会遇到麻烦?

c++ format int vector ipv6

1
推荐指数
1
解决办法
1148
查看次数

Java - 我如何更喜欢IPv6?

我想要得到的内容http://en.wikipedia.org使用java.net.URLopenConnection()方法.

我发现en.wikiepdia.org同时具有IPv4和IPv6地址:

$ host en.wikipedia.org
en.wikipedia.org is an alias for wikipedia-lb.wikimedia.org.
wikipedia-lb.wikimedia.org is an alias for wikipedia-lb.eqiad.wikimedia.org.
wikipedia-lb.eqiad.wikimedia.org has address 208.80.154.225
wikipedia-lb.eqiad.wikimedia.org has IPv6 address 2620:0:861:ed1a::1
Run Code Online (Sandbox Code Playgroud)

如何使用IPv6地址访问该站点?

java ipv6

1
推荐指数
2
解决办法
8134
查看次数

使用struct in6_addr的printf ipv6地址和使用u_int32_t的ipv4地址

我想要printf类型为ipv6地址的值 struct in6_addr 和类型为u_int32_tconsole的ipv4地址.

我尝试过类型转换,但会产生错误

error: aggregate value used where an integer was expected
printf("---------------- ipv4= %zu ipv6 = %zu ",(size_t)ipv4, (size_t)ipv6);
Run Code Online (Sandbox Code Playgroud)

%s ,%lu在堆栈溢出和其他地方经历旧问题之后,我还尝试了许多其他方法.

如果有人有解决方案,我将非常感激.

c printf ipv4 ipv6

1
推荐指数
1
解决办法
6149
查看次数

如何在Powershell中实现IPv6零压缩?

例如:这是一个IP地址:fc06:0000:0002:0760:e000:7201:7003:06b7.但我想将":0"或:和更多的零替换为":".所以看起来应该是这样的:fc06 :: 2:760:e000:7201:7003:6b7

代码:

if (Test-Path $file){
    foreach ($line in Get-Content $file){
        $line=$line.Replace(":0+",":")
        Write-Output $line 
   }
}
Run Code Online (Sandbox Code Playgroud)

我知道,问题在于:0+.所以:我怎么能说出最后一个角色中的一个或多个(现在:零)?因为简单:0+不起作用.谢谢!

regex powershell replace ipv6

1
推荐指数
1
解决办法
193
查看次数

IPv6数据包的UDP校验和计算

我试图了解IPv6的UDP校验和计算方法.对于IPv4数据包,我找到了这个链接 - http://www4.ncsu.edu/~mlsichit/Teaching/407/Resources/udpChecksum.html.我有一个包:


IPv6标头是 - 60 00 00 00 00 0c 11 fd 21 00 00 00 00 00 00 01 ab cd 00 00 00 00 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 01 60
UDP标头是 - 26 92 26 92 00 0c 7e d5
数据为 - 12 34 56 78

根据校验和计算,校验和为7ed5.任何人都可以解释校验和是如何产生这种价值的吗?我想手动计算它来理解方法.

checksum udp ipv6

1
推荐指数
1
解决办法
6754
查看次数

Inet6Address对无效的IPv6地址有效

java.net.Inet6Address用来验证输入字符串是否是有效的IPv6地址.

这是我的代码片段:

public static boolean isValidIPv6ddress(String address) {
    if (address.isEmpty()) {
        return false;
    }
    try {
        Object res = InetAddress.getByName(address);
        return res instanceof Inet6Address;
    } catch (final UnknownHostException ex) {
        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,true即使对于以下无效的输入,上述方法也会返回:

System.out.println(isValidIPv6ddress("2A00:17C8:50C:0000:0000:0000:0000:00001"));
System.out.println(isValidIPv6ddress("2A00:17C8:50C:0000:0000:00000000000000:0000:00001"));
System.out.println(isValidIPv6ddress("2A00:17C8:50C:00001235:0000:00000000000000:0000:00001"));
Run Code Online (Sandbox Code Playgroud)

API 会忽略前导零吗?或者API中是否存在错误

java ipv6

1
推荐指数
1
解决办法
765
查看次数

标签 统计

ipv6 ×10

ipv4 ×3

java ×3

c ×1

c# ×1

c++ ×1

checksum ×1

compression ×1

format ×1

int ×1

ip ×1

irc ×1

powershell ×1

printf ×1

regex ×1

replace ×1

udp ×1

vector ×1