如何在Apache2的remoteip.conf中添加Cloudflare IPv6地址?
如何在Apache2的remoteip.conf中添加Cloudflare IPv6地址?
别担心,我之前折腾Apache + Cloudflare的时候也碰到过这个问题,其实操作起来和IPv4完全一样,而且IPv4和IPv6都建议全部添加,不然会漏掉一部分请求的真实IP解析哦!
先解答你的疑问:IPv4是必须的吗?
必须加!目前还有大量用户是通过IPv4网络访问站点的,漏掉IPv4段的话,这部分请求就没法正确获取真实客户端IP了。而IPv6现在也越来越普及,Cloudflare的代理节点也有大量IPv6地址,所以两者都不能少。
怎么添加IPv6地址到remoteip.conf?
方法和添加IPv4完全一致:
- 打开你已经创建的
/etc/apache2/conf-available/remoteip.conf文件 - 每一行以
RemoteIPTrustedProxy开头,后面直接跟着Cloudflare的IPv6段(带CIDR前缀,比如2606:4700::/32这种格式) - 把所有Cloudflare提供的IPv6段都一行一行加进去就行
给你举个完整的配置示例参考:
RemoteIPHeader CF-Connecting-IP # Cloudflare IPv4 信任段 RemoteIPTrustedProxy 103.21.244.0/22 RemoteIPTrustedProxy 103.22.200.0/22 RemoteIPTrustedProxy 103.31.4.0/22 # 其他IPv4段依次添加... # Cloudflare IPv6 信任段 RemoteIPTrustedProxy 2606:4700::/32 RemoteIPTrustedProxy 2803:f800::/32 RemoteIPTrustedProxy 2405:b500::/32 # 其他IPv6段依次添加...
配置完成后的必要操作
添加完所有IP段后,记得启用这个配置并重启Apache让修改生效:
sudo a2enconf remoteip sudo systemctl restart apache2
这样不管用户是通过IPv4还是IPv6访问,Apache都会正确识别Cloudflare的代理IP,并把CF-Connecting-IP头里的内容作为真实客户端IP记录到日志或用于业务逻辑啦。
备注:内容来源于stack exchange,提问作者rasputin
相关产品推荐
相关产品推荐

