訪問的騰訊API接口常常出問題,致使微信支付支付不了

一、服務器基礎環境

[root@app2-192-168-10-90 ~]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core) 
[root@app2-192-168-10-90 ~]# cat /etc/sysconfig/network-scripts/ifcfg-em1
DNS1=223.5.5.5
DNS2=223.6.6.6
ZONE=public

二、問題反饋,應用程序開發反饋騰訊的API接口常常出問題,致使微信支付支付不了。

2.1 服務器上測試ping api.mch.weixin.qq.com 偶爾會出現 「未知的名稱或服務」

[root@app2-192-168-10-90 ~]# ping api.mch.weixin.qq.com
ping: api.mch.weixin.qq.com: 未知的名稱或服務
[root@app2-192-168-10-90 ~]#

2.2 而且有時候還會出現第一次DNS解析很是慢的問題。

服務器DNS正常設置爲阿里雲DNS服務器 223.5.5.5vim

三、問題緣由

options single-request-reopen
  LINUX DNS客戶端解析緩慢的其中一個緣由是CentOS 6/CentOS 7老是須要等待AAAA(IPv6)的結果,即便關閉IPv6也沒什麼卵用。CentOS 6/CentOS 7中的DNS解析器對於ipv4和ipv6都使用同一個socket接口(如上圖),在同時發出ipv4和ipv6解析請求後,只會收到一個ipv4的解析響應,此時socket將一處於「等待」模式,等待ipv6的解析響應,故致使解析緩慢;添加single-request-reopen後就能夠從新打開一個新的socket接收ipv6的解析響應,而不影響ipv4的解析響應.
options timeout:1 attempts:1 rotate
rotate:這個參數的含義是隨機選取一個做爲查詢的dns server,默認爲按照順序從上往下。

timeout:查詢一個nameserver的超時時間,單位是秒。系統缺省是5,最大能夠設爲30。設置爲1S超時便可,不然等AAAA迴應就到地老天荒了,浪費時間。

attempts:這個是查詢的整個都嘗試一遍的次數,默認LINUX會發出好幾回DNS查詢包,讓查一次便可,浪費時間。

三、解決方法: vim /etc/resolv.conf 添加以下參數

# Generated by NetworkManager
options timeout:1 attempts:1 rotate
options single-request-reopen
nameserver 119.29.29.29
nameserver 223.5.5.5
# 您查詢的IP:119.29.29.29
*   本站數據:廣東省廣州市 騰訊雲計算(北京)有限責任公司 騰訊雲
*   參考數據1:DNSPOD.COM tencent.com
*   參考數據2:中國
*   網友提交的IP:廣東省廣州市 騰訊雲DNS服務器
*   兼容IPv6地址:::771D:1D1D
*   映射IPv6地址:::FFFF:771D:1D1D

四、直接修改resolv.conf 只能臨時生效,重啓network服務後就會失效.防止重啓network服務後配置失效,請以下操做。

chattr +i /etc/resolv.conf ~

4.1 修改後查看文件狀態

[root@app1-192-168-10-80 ~]# lsattr /etc/resolv.conf 
----i----------- /etc/resolv.conf

4.2 chatter 使用說明:

```
chatter: 鎖定文件,不能刪除,不能更改
+a: 只能給文件添加內容,可是刪除不了,
chattr +a /etc/passwd
-d: 不可刪除
加鎖:chattr +i /etc/passwd 文件不能刪除,不能更改,不能移動
查看加鎖: lsattr /etc/passwd 文件加了一個參數 i 表示鎖定
解鎖:chattr -i /home/omd/h.txt - 表示解除centos



相關文章
相關標籤/搜索