首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >netcat6在IPv6局域网中的应用

netcat6在IPv6局域网中的应用
EN

Unix & Linux用户
提问于 2017-05-19 07:43:45
回答 1查看 190关注 0票数 1

我有:[ Host A ] -- [ gateway ] -- [ Host B ],而A和B在不同的子网中。

网关配置:

代码语言:javascript
复制
ip -6 link set enp0s3 up
ip -6 link set enp0s9 up
ip -6 addr flush dev enp0s3
ip -6 addr flush dev enp0s9
ip -6 route flush dev enp0s3
ip -6 route flush dev enp0s9
ip -6 addr add ::ffff:5:7:1:1/126 dev enp0s3
ip -6 addr add ::ffff:5:7:2:1/126 dev enp0s9
echo 1 | tee /proc/sys/net/ipv6/conf/*/forwarding > /dev/null

主机A配置:

代码语言:javascript
复制
  ip link set enp0s3 up
  ip -6 addr flush dev enp0s3
  ip -6 addr add ::ffff:5:7:1:2/126 dev enp0s3
  ip -6 route add default via ::ffff:5:7:1:1

主机B配置:

代码语言:javascript
复制
  ip link set enp0s3 up
  ip -6 addr flush dev enp0s3
  ip -6 addr add ::ffff:5:7:2:2/126 dev enp0s3
  ip -6 route add default via ::ffff:5:7:2:1

我希望IP是来自IPv4的翻译地址(5.7.2.1 -> ::ffff:5:7:2:1)。

问题是:

当我试图从主机B中ping主机A时,它有时会发出ping,有时不会;从主机A到主机B,行为相同。当我尝试ncat -6时,它不起作用(网关tcpdump说“目标主机无法到达”)。ping和ncat只在网关上和从网关工作。

网关上的路由表:

代码语言:javascript
复制
::ffff:5:7:1:0/126 dev enp0s3 proto kernel metric 256 pref medium
::ffff:5:7:2:0/126 dev enp0s9 proto kernel metric 256 pref medium
fe80::/64 dev enp0s8 proto kernel metric 256 pref medium

最后一个fe80::/64记录是我的ssh连接。

我想,问题在路线部分,但对我来说,谜团是如何解决它。

编辑:

我解决了我的问题,这是在冲洗地址ip -6 addr flush dev enp0s3

EN

回答 1

Unix & Linux用户

发布于 2017-05-19 10:53:15

IPv6 4映射的IPv6地址(即::ffff:192.168.0.1格式的地址)不应该在线路上使用。它们被用作双堆栈套接字上的IPv4地址的内部标识符。当双堆栈( IPv6 6/IPv6 4)服务器进程接受来自IPv6主机(例如192.168.0.1 )的IPv4套接字上的连接时,它在内部被转换为::ffff:192.168.0.1

如果网络接口接收到具有此格式地址的数据包,则如果不删除该数据包,则为错误。

票数 3
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/366017

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档