05互联

首页>05互联 >linux怎么配置IPV6并通网?

linux怎么配置IPV6并通网?

来源:05互联 发布时间:2024/11/12 19:29:55

尊敬的客户:

我来详细说明Linux下配置IPv6的几种方法:

  1. 临时配置(命令行):

# 启用IPv6模块
sudo modprobe ipv6

# 配置IPv6地址(临时)
sudo ip -6 addr add 2001:db8::2/64 dev eth0

# 添加默认路由
sudo ip -6 route add default via 2001:db8::1 dev eth0

# 检查配置
ip -6 addr show
ip -6 route show
  1. 永久配置(通过NetworkManager):

# 编辑网络配置
sudo nmtui

# 或者直接编辑配置文件
sudo vi /etc/NetworkManager/system-connections/eth0.nmconnection

[ipv6]
method=auto
addr-gen-mode=stable-privacy
  1. 通过netplan配置(Ubuntu系统):

# 编辑 /etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp6: yes  # 自动获取IPv6地址
      accepts-ra: yes  # 接受路由器通告
      addresses:
        - "2001:db8::2/64"  # 静态IPv6地址
      gateway6: "2001:db8::1"  # IPv6网关
      nameservers:
        addresses: 
          - "2001:4860:4860::8888"  # Google IPv6 DNS
          - "2001:4860:4860::8844"
  1. 直接修改接口配置(RHEL/CentOS):

# 编辑 /etc/sysconfig/network-scripts/ifcfg-eth0
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6ADDR=2001:db8::2/64
IPV6_DEFAULTGW=2001:db8::1
  1. 检查和验证配置:

# 检查IPv6是否启用
cat /proc/sys/net/ipv6/conf/all/disable_ipv6
# 应该显示0(启用)

# 检查IPv6地址
ip -6 addr show

# 测试连接
ping6 google.com
ping6 2001:4860:4860::8888

# 查看路由
ip -6 route show

# 测试DNS解析
dig AAAA google.com
  1. 网络故障排查:

# 检查网络连接
traceroute6 google.com

# 检查网络接口状态
ip link show

# 查看系统日志
journalctl -f

# 检查防火墙规则
ip6tables -L

# 测试具体端口
nc -6 -zv ipv6.google.com 443
  1. 常见问题解决:

# 问题:IPv6禁用
# 解决:编辑 /etc/sysctl.conf
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0

# 应用设置
sudo sysctl -p

# 问题:没有IPv6地址
# 检查Router Advertisement
rdisc6 eth0

# 问题:DNS不工作
# 编辑 /etc/resolv.conf
nameserver 2001:4860:4860::8888
nameserver 2001:4860:4860::8844
  1. 安全配置:

# 配置基本防火墙规则
ip6tables -A INPUT -p icmpv6 --icmpv6-type echo-request -j ACCEPT
ip6tables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
ip6tables -A INPUT -i lo -j ACCEPT
ip6tables -P INPUT DROP

# 保存防火墙规则
ip6tables-save > /etc/iptables/rules.v6
  1. IPv6隐私扩展:

# 编辑 /etc/sysctl.conf
net.ipv6.conf.all.use_tempaddr = 2
net.ipv6.conf.default.use_tempaddr = 2

# 应用设置
sudo sysctl -p

提示:

  1. 确保您的ISP提供IPv6服务

  2. 确保路由器支持IPv6

  3. 某些VPS可能需要在控制面板中启用IPv6

  4. 建议同时保持IPv4和IPv6(双栈)运行

  5. 定期更新系统以获取最新的IPv6支持

  6. 考虑使用Privacy Extensions保护隐私


05互联

发布时间:2024/11/12 19:29:55