如何在Nginx和Apache中启用IPv6()

本文概述

  • 如何在Linux上找到IPv6?
  • 在Apache HTTP Server中启用IPv6
  • 在Nginx Web服务器中启用IPv6
  • 更新DNS AAAA记录
大多数CDN, 例如Cloudflare, SUCURI, AKAMAI, 都可以从其边缘网络启用IPv6。但是, 如果你未使用提供IPv6的CDN并需要启用你的网站, 则可以按照以下方法进行操作。
【如何在Nginx和Apache中启用IPv6()】IPv6比IPv4具有性能优势。它可以帮助将页面加载时间从25ms减少到300ms。 SUCURI的一份有趣的报告显示, 全球前1000个站点中有16%支持IPv6, 而前100万个站点中则有7%。
如何在Nginx和Apache中启用IPv6()

文章图片
如果尚未启用, 最好在你的网站上启用。
前提条件–你必须确保在操作系统级别启用了IPv6。如果你使用的是RHEL / CentOS, 则可以参考本指南。
让我们看看在Apache HTTP和Nginx Web服务器上实现IPv6的过程。
如何在Linux上找到IPv6? 在启用IPv6之前, 你需要知道IPv6地址。在Linux / CentOS中有多种定位IPv6的方法。
使用ifconfig
你可以将ifconfig与grep inet6一起使用以查找地址
[[email  protected] conf]# ifconfig |grep inet6inet6 2400:6180:0:d0::1f33:d001prefixlen 64scopeid 0x0< global> inet6 ::1prefixlen 128scopeid 0x10< host> [[email  protected] conf]#

使用IP Show
[[email  protected] conf]# ip -6 addr show1: lo: < LOOPBACK, UP, LOWER_UP> mtu 65536 state UNKNOWN qlen 1inet6 ::1/128 scope host valid_lft forever preferred_lft forever2: eth0: < BROADCAST, MULTICAST, UP, LOWER_UP> mtu 1500 state UP qlen 1000inet6 2400:6180:0:d0::1f33:d001/64 scope global valid_lft forever preferred_lft forever[[email  protected] conf]#

因此, 现在你知道了服务器的IPv6地址。
在Apache HTTP Server中启用IPv6 我假设你已经安装了Apache, 并且可以正常运行。
  • 转到conf文件夹(默认安装位置为/ etc / httpd / conf)
  • 备份httpd.conf文件
  • 添加带有端口号的Listen指令
Listen [2400:6180:0:d0::1f33:d001]:80

注意:确保将IPv6放在方框中。
  • 重新启动Apache HTTP服务器
service httpd restart

[[email  protected] conf]# netstat -anlp |grep 80tcp00 139.59.227.20:800.0.0.0:*LISTEN23047/httpdtcp600 2400:6180:0:d0::1f33:80 :::*LISTEN23047/httpdunix2[ ACC ]STREAMLISTENING140801091/masterpublic/qmgr[[email  protected] conf]#

而且, 如你所见, 第二行以tcp6开头。
在Nginx Web服务器中启用IPv6 默认情况下, Nginx配置为侦听IPv6地址。如果查看nginx.conf文件, 应该看到以下内容。
listen       [::]:80 default_server;

如果你只有一个IPv6地址, 那么就可以了;但是, 如果你有多个, 并且希望Nginx监听特定的IP, 则需要像这样进行调整。
listen       [2400:6180:0:d0::1f33:d001]:80 default_server;

重新启动Nginx以验证它正在侦听特定IP
[[email  protected] conf]# netstat -anlp |grep 80tcp00 0.0.0.0:800.0.0.0:*LISTEN23257/nginx: master tcp00 139.59.227.20:8066.249.75.68:63906TIME_WAIT-tcp00 139.59.227.20:8066.249.75.72:58416TIME_WAIT-tcp600 2400:6180:0:d0::1f33:80 :::*LISTEN23257/nginx: master unix2[ ACC ]STREAMLISTENING140801091/masterpublic/qmgr[[email  protected] conf]

很简单, 不是吗?
更新DNS AAAA记录 你需要做的最后一步是在注册商处更新你域的AAAA记录。更新后, 你可以通过执行DNS查找来验证记录。你还可以使用IPv6测试工具来检查你的网站是否可以通过IPv6访问。

    推荐阅读