记录日常点点滴滴,欢迎来到我的小站。

0%

AWS EC2 由ipv4转ipv6全过程教程

眼看着2024年2月1日马上就要到来,AWS对IPv4即将收费,像我们这种收入少,自建站的用户,无法承受每小时收费的IPv4,只好赶快将IPV4转为IPV6。
下面讲的内容都是此次ipV4转ipv6的过程。

过程1: 将IPv6 CIDR块和VPC的子网进行关联

IPv6 CIDR块与VPC关联

  1. 打开AWS VPC控制台 控制台
  2. 点击页面左侧边栏的 您的VPC
  3. 选择正在使用的VPC。
  4. 勾选前边的选项框后,选择操作,编辑CIDR
    编辑CIDR
  5. 选择Amazon 提供的 IPV6 CIDR块
    添加新的IPv6 CIDR
    Amazon 提供的 IPV6 CIDR块
  6. 关闭

将IPv6 CIDR块与子网关联

  1. 打开AWS VPC控制台 控制台
  2. 点击页面左侧边栏的 子网
  3. 选择EC2使用中的子网,详细信息可以到EC2的详细中查到。
    EC2的子网详细信息
  4. 选择操作、编辑 IPv6 CIDR,然后选择添加 IPv6 CIDR。
    编辑 IPv6 CIDR
    添加 IPv6 CIDR
  5. 根据需要编辑 CIDR 块。一般默认就好
  6. 保存。
  7. 如果还有其他EC2主机的话,对 VPC 中的任何其他子网重复此过程。(没有则忽略此处)

过程2:更新路由表

当 IPv6 CIDR块与 VPC 关联时,会自动向 VPC 的每个路由表添加本地路由,以允许 VPC 内的 IPv6 流量。

更新公有子网的路由表

  1. 打开AWS VPC控制台 控制台
  2. 点击页面左侧边栏的 子网。选择EC2正在使用的子网。选择下面的路由表选项卡。
  3. 选择路由表。选择 编辑路由表关联。
    编辑路由表关联
  4. 选择添加路线。选择::/0目的地 。_ 选择Target的互联网网关的 ID 。
  5. 保存更改。

过程3:更新安全组规则

要使实例能够通过 IPv6 发送和接收流量,您必须更新安全组规则以包含 IPv6 地址的规则。比如你的网站 80端口

更新入站安全组规则

  1. 打开AWS VPC控制台 控制台
  2. 点击页面左侧边栏的 安全组
    安全组
  3. 在入站规则选项卡中,选择编辑入站规则。
    编辑入站规则
  4. 对于允许 IPv4 流量的每条规则,选择添加规则并配置该规则以允许相应的 IPv6 流量。例如,要添加允许通过 IPv6 的所有 HTTP 流量的规则,请为“类型 ”和“源”选择HTTP。::/0
    编辑入站规则
  5. 保存规则。

为实例分配IPv6地址

  1. 打开AWS EC2控制台 控制台
  2. 点击页面左侧边栏的 实例。选择EC2实例,并选择下方的 联网选项卡
  3. 找到网络接口,并点击接口ID
    网络接口ID
  4. 选择管理IP地址,自动分配即可,记得勾选下面的分配主IPv6地址
    管理IP地址
    分配主IPv6地址

现在我们回到EC2的管理面板,查看主机的详细信息,就会发现已经被分配了新的IPv6地址了。

分配了IPv6地址不算完,Apache2也需要修改

ports.conf 增加你的监听端口

修改/etc/apache2/ports.conf
添加或修改以下内容

1
2
Listen [::]:80
Listen [::]:443

注意如果原来是Listen 80的话,请直接修改此处,或使用#注释掉

查看Apache2是否开启IPv6

使用netstat -tln
结果中出现tcp6 :::80就算成功了。
接下来重新启动Apache2。我们可以去看看是否能够正常显示网站了。

查看vsftpd是否开启IPv6

使用less /etc/vsftpd.conf
查看最前面的几行,

1
2
3
4
5
6
7
8
9
#listen=YES
#
# This directive enables listening on IPv6 sockets. By default, listening
# on the IPv6 "any" address (::) will accept connections from both IPv6
# and IPv4 clients. It is not necessary to listen on *both* IPv4 and IPv6
# sockets. If you want that (perhaps because you want to listen on specific
# addresses) then you must run two copies of vsftpd with two configuration
# files.
listen_ipv6=YES

是否是这样,不是改成这样,并在AWS服务器的EC2管理面板的安全组中添加 ::/0 入站规则