Skip to content

IPv4 地址 ​

🌐 IPv4 地址在 r0capture 里的表示与转换。

表示形式 ​

r0capture 里 IPv4 有三种表示:

形式在哪说明
点分字符串设备端 sockAddr.ip"192.168.1.1"
大端 uint32message 字段网络序整数
4 字节大端二进制Python struct.pack(">I")还原用

IPv4-mapped IPv6 ​

sockAddr.ip 可能是 ::ffff:192.168.1.1(IPv4 映射到 IPv6):

javascript
sockAddr.ip.split(":").pop()  // "192.168.1.1"

Python 还原 ​

python
src_addr = socket.inet_ntop(socket.AF_INET, struct.pack(">I", p["src_addr"]))
# 3232235777 -> "192.168.1.1"

0.0.0.0 的含义 ​

地址为 0 表示:

  • SSL_get_fd 缺失(返回 0 fd)
  • socket 已关闭(Socket.localAddress 返回 null)

详见 pcap 里地址是 0.0.0.0。

相关文档 ​

基于 VitePress 构建 · 教学用途