看了網上很多解決方案,都是端口問題,將127.0.0.1改為0.0.0.0,就ok了,但是本人的問題不是端口問題,端口本來就是0.0.0.0。
其實redis無法連接數據庫就只有這幾種可能,防火牆,安全組,密碼,綁定IP。這次的問題感覺還是比較讓人費解的,當更換端口號的時候就可以,默認端口6379就是不行。
按照順序依次檢查了防火牆,安全組,密碼,配置文件,都確認沒有問題之后,再次啟動redis,依然是服務器可以訪問,本地telnet都無法連接。這個問題很像是防火牆和綁定IP的原因。
所以我再次檢查firewall防火牆(firewall-cmd --state)和iptables(service iptables status)防火牆,首先看到的是firewall防火牆是沒有運行的
,再去檢查iptables防火牆的狀態
這句話的意思是,找不到iptables,那就是因為系統版本的原因,已經由firewall防火牆接管了。那自然
也就不再考慮是因為防火牆的原因,導致無法連接服務器。但是蛋疼的事就在這里,當使用iptables -L -n查看已設置的iptables規則,它竟然存在安全組規則,腦子都凌亂了。
上邊結果顯示范圍內的端口號都只能本地訪問,6379自然也就不能被訪問到了。知道原因就好辦了,直接使用
iptables -F
1
將這些規則都清楚掉,再次使用
iptables -L -n
1
查看,規則都不存在了,使用telnet測試服務器端口號,也可以正常連接了。這里面個人最不能理解的地方就是為什么iptables 防火牆不存在,竟然還存在它的規則。
————————————————
版權聲明:本文為CSDN博主「Fu_Lin_」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/CLinuxF/java/article/details/83105389