介绍

我们有时候购买了vps,只配置了ipv4,需要我们工单申请ipv6,这时候就需要手动配置系统的网卡配置,今天我们以Debian11系统为例,来看一下怎么简单配置ipv6。

 

配置

一般情况下,我们只需简单修改下/etc/network/interfaces文件即可。首先,和ipv4一样,我们需要知道IP地址(address)、掩码(netmask)和网关(gateway),假设我们目前使用的网卡是eth0,我们可以对/etc/network/interfaces进行如下修改。

第一种配置

  1. iface eth0 inet6 static
  2. address 2607:f130:0:f9:ff:ff:9495:3523
  3. gateway 2607:f130:0000:00f9:0000:0000:0000:0001
  4. netmask 64

保存后,记得重启网络:

/etc/init.d/networking restart

第二种配置

  1. up ip addr add 2607:f130:0:f9:ff:ff:9495:3523/64 dev eth0
  2. up ip 6 route add 2607:f130:0000:00f9:0000:0000:0000:0001 dev eth0
  3. up ip 6 route add default via 2607:f130:0000:00f9:0000:0000:0000:0001

保存后,记得重启网络:

/etc/init.d/networking restart

详细解释

我们先来看下第二种配置:

up ip addr add 2607:f130:0:f9:ff:ff:9495:3523/64 dev eth0

  • 这行命令是为网络接口eth0添加一个IPv6地址。
  • 2607:f130:0:f9:ff:ff:9495:3523是IPv6地址的地址部分,后面的/64表示子网前缀长度为64位。IPv6地址一般由128位构成,其中前缀部分表示网络地址,后缀部分表示主机地址。
  • dev eth0指定了IPv6地址所属的网络接口,即eth0。

up ip -6 route add 2607:f130:0000:00f9:0000:0000:0000:0001 dev eth0

  • 这行命令是添加一个IPv6路由表项。
  • 2607:f130:0000:00f9:0000:0000:0000:0001是目标IPv6地址,它是要访问的目标网络的地址部分。
  • dev eth0指定了该路由项通过网络接口eth0进行访问。

up ip -6 route add default via 2607:f130:0000:00f9:0000:0000:0000:0001

  • 这行命令是添加默认的IPv6路由。
  • default表示该路由是默认路由,用于发送所有未知目标网络的数据包。
  • via 2607:f130:0000:00f9:0000:0000:0000:0001指定了默认路由的下一跳地址,即所有未知目标网络的数据包将被发送到该地址。

综合来说,这三行命令的作用是在网络接口eth0上配置一个IPv6地址,并添加两条IPv6路由表项:一条用于访问特定的IPv6目标网络,另一条用于作为默认路由发送所有未知目标网络的数据包。

我们再来看下第一种配置:

iface eth0 inet6 static

  • 这行命令指定了网络接口eth0的IPv6配置模式为静态(static)。
  • 这意味着IPv6地址和路由都将以静态的方式配置,而不是通过动态协议(如DHCPv6)获取。

address 2607:f130:0:f9:ff:ff:9495:3523

  • 这行命令为网络接口eth0配置了一个静态的IPv6地址。
  • 2607:f130:0:f9:ff:ff:9495:3523是IPv6地址的地址部分,没有指定子网前缀长度,这里默认使用64位。

gateway 2607:f130:0000:00f9:0000:0000:0000:0001

  • 这行命令指定了默认的IPv6网关地址。
  • 2607:f130:0000:00f9:0000:0000:0000:0001是默认网关的IPv6地址,用于发送所有未知目标网络的数据包。

netmask 64

  • 这行命令指定了IPv6地址的子网前缀长度为64位。
  • 子网前缀长度为64位是IPv6中常用的设置,它表示前64位为网络地址,后64位为主机地址。

两种配置的区别:

  • 第一组命令(up命令)是直接在命令行中使用ip工具来配置IPv6地址和路由,更加灵活和直接。
  • 第二组命令(iface命令)是通过配置文件进行IPv6地址和路由的静态配置。这种方式更适合在系统启动时自动加载配置,并且通常用于基于Debian/Ubuntu的Linux系统。

无论使用哪种方式,最终目的都是配置网络接口的IPv6地址和路由,使系统能够正确地进行IPv6通信。具体选择哪种配置方式取决于个人偏好和系统环境。

额外配置

如果发现ipv6仍然不通,可能还需要进行如下配置:

修改/etc/sysctl.conf文件:

  1. nano /etc/sysctl.conf

在底部添加如下几行:

  1. net.ipv6.conf.all.autoconf = 0
  2. net.ipv6.conf.all.accept_ra = 0
  3. net.ipv6.conf.eth0.autoconf = 0
  4. net.ipv6.conf.eth0.accept_ra = 0

应用下配置:

  1. sysctl -p

尝试重启下网络:

  1. systemctl restart networking

检验下网络:

  1. ping6 google.com

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注