首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么ipv6堆栈(在linux上)可以解释ipv4地址?

为什么ipv6堆栈(在linux上)可以解释ipv4地址?
EN

Stack Overflow用户
提问于 2020-02-27 00:56:07
回答 1查看 88关注 0票数 0

我认为双协议栈ipv4 / ipv6是必要的,nginx、apache、ssh在ipv4和ipv6接口上都可以监听。但是在使用tvheadend之后,我发现即使它只监听ipv6堆栈,它也会响应ipv4地址……为什么?这就是证据:

代码语言:javascript
复制
sudo lsof -i -P -n

tvheadend 3676  hts   33u  IPv6 679854      0t0  TCP 192.168.0.8:9981->192.168.0.4:57868 (ESTABLISHED)

ipv6堆栈使用192.168.x.x ipv4地址...

而且在ipv4上没有监听:

代码语言:javascript
复制
sudo lsof -i -P -n | grep LISTEN | grep tvheadend

tvheadend 3676  hts    7u  IPv6 439770      0t0  TCP *:9981 (LISTEN)

tvheadend 3676  hts    8u  IPv6 439773      0t0  TCP *:9982 (LISTEN)


sudo netstat -tlnp | grep tvheadend

tcp6       0      0 :::9981                   :::*                    LISTEN      3676/tvheadend
tcp6       0      0 :::9982                   :::*                    LISTEN      3676/tvheadend
EN

回答 1

Stack Overflow用户

发布于 2020-02-27 03:37:34

如果IPv4和IPv6堆栈正在工作,并且只存在IPv6侦听器,那么在许多(如果不是所有主要的) OSes上,默认情况下,发送到v6并将v4发送器地址映射到ipv6是正常的。可以在大多数OSes上使用IPV6_V6ONLY套接字选项来禁用此功能,如this documentation中所示。

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

https://stackoverflow.com/questions/60418857

复制
相关文章

相似问题

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