close

# 緣起

自從開發的服務移到公雲上後,發現總是有10%機會出現連線失敗的情況

C#回應的錯誤是...

The SSL connection could not be established, see inner exception.--> Received an unexpected EOF or 0 bytes from the transport stream.

針對錯誤 Received an unexpected EOF or 0 bytes from the transport stream. 去查

發現市面上(?)的文章從2010年開始就有,

大多都是說是SSL協定的問題,建議要多一行直接寫死SSL協定的程式語法

ex...這篇文章

不過初步判斷大家都是連不通,而不是像我一樣是一定機率不通

所以心中就覺得肯定不是這問題,直接開了一個ticket給公雲維運商!

然後...對方中國籍窗口問問情況後,就石沉大海....

ㄟ~ 這樣的服務有夠....

# 原因

我決定還是要處理這個問題!

開始一連串的測試! 首先我用 線上SSL檢查去看看我呼叫fcm API 的SSL協定 

https://www.ssllabs.com/ssltest/analyze.html?d=fcm.googleapis.com

發現沒有問題,每個都支援tls 1.2 那肯定不是我的問題

防火牆議題的機率就上升了!

然後來測試看看正式環境到底打fcm.googleapis.com會解析出什麼ip來

我的工具是curl

用法如下

curl -I https://fcm.googleapis.com --verbose

-I 只顯示header

--verbose  顯示詳細連線資訊

連續打了100次果然後看到問題了!!!

果然是dns解析出的某幾個ip沒有開對外防火牆。

收工!

 

失敗

image

 

成功

image

arrow
arrow
    全站熱搜

    45 發表在 痞客邦 留言(0) 人氣()