redis 开启ipv6
配置文件添加
[root@localhost redis]# vi redis.conf
bind * -::*
[root@localhost redis]# service redis restart
[root@localhost redis]# netstat -tnlp|grep redis
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 2466/redis-server *
tcp6 0 0 :::6379 :::* LISTEN 2466/redis-server *
nginx开启ipv6
[root@localhost nginx]# vi nginx.conf
server {
listen 8088; #ipv4
listen [::]:8088; #ipv6
......
}
[root@localhost nginx]# nginx -s reload
[root@localhost nginx]# netstat -tnlp|grep 8088
tcp 0 0 0.0.0.0:8088 0.0.0.0:* LISTEN 23355/nginx: master
tcp6 0 0 :::8088 :::* LISTEN 23355/nginx: master
连通测试
[root@localhost ~]# ping -6 [ipv6地址]
[root@localhost ~]# telnet -6 [ipv6地址]
[root@localhost ~]# curl -6 -g [ipv6地址]
springboot程序
在 Spring Boot 中,默认情况下,server.address 属性没有配置。这意味着应用程序将绑定到所有可用的网络接口(IP地址)。换句话说,当没有显式配置 server.address 时,服务器将监听所有 IPv4(0.0.0.0)和IPv6(::)地址。
[root@localhost ~]#netstat -tnlp|grep 8086
tcp6 0 0 :::8086 :::* LISTEN 28581/java
如果您需要将应用程序绑定到特定的 IP 地址,您需要显式设置 server.address 属性。在你的 application.properties 或 application.yml 文件中设置 server.address 属性,例如server.address=192.168.1.10
如果你仍然希望只绑定到 IPv4 地址,你可以通过设置 Java 系统属性来禁用 IPv6。可以通过添加以下选项到你的 Java 启动命令行中来完成:-Djava.net.preferIPv4Stack=true