无法浏览 IPv6 网站

无法浏览 IPv6 网站

我正在使用 20.04 LTS,但突然无法浏览 IP 地址为 IPv6 的网站,例如 (hepsiburada.com)。

甚至 apt update 命令也不再起作用,因为 Launchpad 正在重定向到 IPv6 地址:

W: Couldn't get http://ppa.launchpad.net/ubuntubudgie/backports/ubuntu/dists/focal/InRelease  ppa.launchpad.net:80 (2001:67c:1560:8008::19). - connect (101: Network is unreachable)

还:

$ ping ipv6.google.com
ping: connect: Network is unreachable

但是,我可以顺利浏览所有其他 IPv4 网站,没有任何问题。

可能是什么问题?

更新:我已经已识别apt 问题与 HTTPS 或证书问题有关,因此听起来它不完全是 IPv6 问题。我的 ISP 被发现不支持 IPv6 地址。不过,正如我在评论中所说,我无法浏览和和等网站hepsiburada.comyurticikargo.com甚至suratkargo.com.trGoogle 有时也无法加载。

/etc/grub/default

# 如果你更改了此文件,请随后运行“update-grub”进行更新
#/boot/grub/grub.cfg。
# 有关此文件中选项的完整文档,请参阅:
# info -f grub -n ‘简单配置’

GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=隐藏
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 静默启动 nvme_core.default_ps_max_latency_us=0"
GRUB_CMDLINE_LINUX=""

# 取消注释以启用 BadRAM 过滤,修改以满足您的需求
# 这适用于 Linux(无需补丁)以及任何获得
# 来自 GRUB(GNU Mach、FreeBSD 的内核...)的内存映射信息
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# 取消注释以禁用图形终端(仅限 grub-pc)
#GRUB_TERMINAL=控制台

# 图形终端使用的分辨率
# 请注意,您只能使用您的显卡通过 VBE 支持的模式
# 您可以使用命令“vbeinfo”在真实的 GRUB 中看到它们
#GRUB_GFXMODE=640x480

# 如果不希望 GRUB 将“root=UUID=xxx”参数传递给 Linux,请取消注释
#GRUB_DISABLE_LINUX_UUID=true

# 取消注释以禁用恢复模式菜单项的生成
#GRUB_DISABLE_RECOVERY="真"

# 取消注释以便在 grub 启动时听到哔声
#GRUB_INIT_TUNE="480 440 1"

/etc/gai.conf

# getaddrinfo(3) 的配置。
#
# 到目前为止,只需要对目标地址排序进行配置。
# RFC 3484 规定了排序。但 RFC 还规定系统
# 管理员应该能够覆盖默认值。这可以是
# 在这里实现。
#
# 每一行都有一个初始标识符,指定后面跟着的选项
# 最多两个值。此文件中指定的信息将取代
# 默认信息。一种数据的完全缺失会导致
# 适当的默认信息将被使用。支持的命令包括:
#
# 重新加载  
# 如果设置为是,则每个 getaddrinfo(3) 调用都会检查此文件
# 更改,如有必要,重新加载。此选项实际上不应该
# 使用。可能存在运行时问题。默认为否。
#
# 标签      
# 向 RFC 3484 标签表添加另一条规则。请参阅
#RFC 3484. 默认值为:
#
#标签 ::1/128 0
#标签 ::/0 1
#标签 2002::/16 2
#标签 ::/96 3
#标签 ::ffff:0:0/96 4
#标签 fec0::/10 5
#标签 fc00::/7 6
#标签 2001:0::/32 7
#
# 此默认值与 RFC 3484 中给出的表格不同,处理方式如下
#(现已过时)站点本地 IPv6 地址和唯一本地地址。
# 造成这种差异的原因是这些地址永远不会
# NAT 而 IPv4 站点本地地址很可能是 NAT。鉴于
# 在仅具有 IPv6 的机器上,IPv6 优先于 IPv4(见下文)
# 站点本地 IPv4 和 IPv6 地址查找全局地址
# 看到 IPv6 是首选。结果是长时间延迟,因为
# 当 IPv4 地址为
#(至少在可预见的未来)NATed。我们还将Teredo
# 隧道特殊。
#
# 优先级     
# 向 RFC 3484 优先级表添加另一条规则。请参阅第 2.1 节
# 和 RFC 3484 中的 10.3。默认值为:
#
#优先级::1/128 50
#优先级 ::/0 40
#优先级 2002::/16 30
#优先级 ::/96 20
#优先级 ::ffff:0:0/96 10
#
# 对于首选 IPv4 连接的站点,将最后一行更改为
#
#优先级 ::ffff:0:0/96 100

#
# 范围v4    
# 向 RFC 6724 IPv4 地址范围表添加另一条规则。
# 默认情况下,RFC 6724 第 3.2 节中描述的范围 ID 是
# 已使用。几乎不需要更改这些默认值。
# 默认值相当于:
#
#scopev4 ::ffff:169.254.0.0/112 2
#scopev4 ::ffff:127.0.0.0/104 2
#scopev4 ::ffff:0.0.0.0/96 14
优先级 ::ffff:0:0/96 100

/etc/sysctl.conf

#
# /etc/sysctl.conf - 设置系统变量的配置文件
# 查看 /etc/sysctl.d/ 以了解更多系统变量。
# 查看 sysctl.conf (5) 了解信息。
#

#kernel.domainname = example.com

# 取消注释以下内容以停止控制台上的低级消息
#内核.printk = 3 4 1 3

################################################################3
# 之前在 netbase 中找到的函数
#

# 取消注释接下来的两行以启用欺骗保护(反向路径过滤器)
# 在所有接口上开启源地址验证
# 防止一些欺骗攻击
#net.ipv4.conf.默认.rp_filter=1
#net.ipv4.conf.all.rp_filter=1

# 取消注释下一行以启用 TCP/IP SYN cookies
# 参见http://lwn.net/Articles/277146/
# 注意:这也可能会影响 IPv6 TCP 会话
#net.ipv4.tcp_syncookies=1

# 取消注释下一行以启用 IPv4 数据包转发
#net.ipv4.ip_forward=1

# 取消注释下一行以启用 IPv6 数据包转发
# 启用此选项将禁用无状态地址自动配置
# 根据此主机的路由器通告
#net.ipv6.conf.全部转发=1


###################################################################
# 附加设置 - 这些设置可以改善网络
# 主机的安全并防止一些网络攻击
# 包括欺骗攻击和中间人攻击
# 重定向。但是,有些网络环境要求这些
# 设置已被禁用,因此请根据需要检查并启用它们。
#
# 不接受 ICMP 重定向(防止 MITM 攻击)
#net.ipv4.conf.all.accept_redirects = 0
#net.ipv6.conf.all.accept_redirects = 0
# _或者_
# 仅接受默认网关列出的 ICMP 重定向
# 网关列表(默认启用)
#net.ipv4.conf.all.secure_redirects = 1
#
# 不发送 ICMP 重定向(我们不是路由器)
#net.ipv4.conf.all.send_redirects = 0
#
# 不接受 IP 源路由数据包(我们不是路由器)
#net.ipv4.conf.all.accept_source_route = 0
#net.ipv6.conf.all.accept_source_route = 0
#
# 记录 Martian 数据包
#net.ipv4.conf.all.log_martians = 1
#

###################################################################
# 魔法系统请求密钥
# 0=禁用,1=启用全部,>1 sysrq 功能的位掩码
# 参见 https://www.kernel.org/doc/html/latest/admin-guide/sysrq.html
# 其他值的作用
#内核.sysrq=438
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.默认.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

更新 2:因此,经过调查,发现这个问题与 IPv6 无关。是的,我的网络不支持 IPv6,但看起来我的 ISP 存在其他问题,这与 Ubuntu 无关,因为我在使用相同网络的 Android 手机上也遇到了同样的问题。

感谢每一位提供帮助和建议的人,很抱歉因为一个错误的问题而打扰您。

答案1

以下几点可能会有所帮助。如果您及时发布反馈,解决问题的机会就会增加。

可能的解决方案/尝试的方法

  1. 编辑如果您的计算机是便携式的,请尝试从其他位置执行相同操作。显示一个案例相似的症状和你的一样,问题根源是硬件。或者你可以使用你的手机作为 USB 网络共享设备

  2. 编辑与上述相同,来自具有支持 IPV6 并已启用该功能的 ISP/路由器组合的地方。

  3. 抑制 IPV6(如果 IPV6 确实不可用则有必要)

    1.1. 将ipv6.disable=1的值添加到中GRUB_CMDLINE_LINUX_DEFAULT(通常具有 的值"quiet splash"grub。使用

    $ sudo nano /etc/default/grub
    <EDIT>, <SAVE>
    $ sudo update-grub
    

    1.2. 重新启动。

  4. 抑制 IPV6。附加到/etc/gai.conf以下行:

    precedence ::ffff:0:0/96  100
    

    如果存在则取消注释。

  5. 禁止 IPV6 (来源)。使用(我不确定是否需要最后一个命令)

    $ sudo nano /etc/sysctl.conf
    <EDIT>, <ADD LINES BELOW>, <SAVE>
    net.ipv6.conf.all.disable_ipv6 = 1
    net.ipv6.conf.default.disable_ipv6 = 1
    net.ipv6.conf.lo.disable_ipv6 = 1
    $ sudo sysctl --load
    $ sudo systemctl restart networking
    
  6. 仅抑制 IPV6 。运行时apt-get添加。或者将其设为永久的,如下所示-o Acquire::ForceIPv4=trueapt-get这里

额外有用信息

请在问题中发布以下命令的输出

  1. cat /etc/default/grub
  2. cat /etc/gai.conf
  3. cat /etc/sysctl.conf
  4. 编辑 cat /etc/apt/sources.list
  5. 编辑 inxi -N
  6. 编辑 lspci -knn | grep Net -A2

请添加以下几点信息

  1. 您提到“突然间我无法浏览 IP 地址为 IPv6 的网站”。您以前能浏览这些网站吗?使用您现在无法浏览的相同软件和硬件?您能确定两者之间有什么变化吗?
  2. 编辑您的计算机的品牌/型号。
  3. 编辑上述第 1 项和第 2 项(重新编号)的结果。

有关的

  1. 错误 101:尝试更新时无法连接网络

答案2

尝试从 中删除iface eth0 inet dhcp和。如果可用,网络管理器将收到 IPv6 地址。iface eth0 inet6 dhcp/etc/network/interfaces

如果您必须在 /etc/network/interfaces 中使用手动配置,则 IPv6 的正确设置将是,iface eth0 inet6 auto因为在许多情况下路由器上不使用 DHCPv6。最常见的是 SLAAC 配置。

答案3

首先通过在终端中运行以下命令来检查系统上是否禁用了 IPv6:

ip a | grep -i inet6

如果该命令的输出为空白,则表示 IPv6 已禁用,需要重新启用。如果不是空白,则表示您的系统已启用 IPv6,问题可能出在路由器或提供商级别。您可以通过运行以下命令来启用 IPv6:

sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=0
sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=0
sudo sysctl -p

答案4

所以……事实证明,这不是 IPv6 问题。原来是我的 ISP 在连接这些网站(和其他网站)时遇到了一些奇怪的问题,所以我联系了他们,他们从他们的角度修复了问题。现在一切都正常了。

感谢所有提供帮助的人,很抱歉浪费了你们的时间。

相关内容