不同網段互通但是Redis通信失敗

有次遇到一個redis很簡單的問題,但是我和同事一起看了兩天都沒有發現原因,問題是在客戶端連不上服務端的redis,我們一開始想到的是服務本身 或者 網絡 問題,后來終于解決,在解決這個問題也是翻閱了很多博客和用了各種辦法,為了警示自己,特地寫此文章。

問題背景:

有三臺服務器 ip 分別是 A:192.168.3.50,B:192.168.3.234,C:192.168.1.234
需求是A服務器上有套告警平臺, B服務器上有分析告警服務,C:底層算法服務

其中的邏輯 是 B平臺通過redis與C服務器交互,C接收到圖片后解析告警行為,然后再返回結果給B服務器上;A服務會主動過來取B服務的告警行為;

簡單理解就是
A 主動交互 B
C 主動交互 B
中間只有B有redis,所以其他兩臺都是主動來連B
在網絡配置好后,A可以正常連上redis服務,C 端口能通,但是執行 keys *時報錯 connection by peer,一開始排查的方向是網絡問題,但是雙方端口及ping都通,所以我們認為網絡應該沒問題,就在服務上花了好久;

1.檢查配置文件有沒有禁止本機外的IP可連
2.連接時長參數配置的是否夠用
3.是否原先key值數據有誤
4.服務代碼是否存在問題

以上方向經反復排查后,都沒有找到問題。
后來又轉回到網絡,這個網絡看著是沒有問題,相互間也都能訪問通,但是無法通信,后來將C服務器也改成3段后就可以正常連通了,具體是網絡的什么問題至今也不清楚,端口什么的都能通,接口也能調用但是redis就是無法通信,如果有大佬知道問題,歡迎指正 感激不盡。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容