github的IP地址被改變了嗎?
我今天遇到了一個問題,由於與 github 的連接問題,我在應用程序伺服器上的部署無法完成。
我注意到,當我使用Google DNS 伺服器執行 github.com 的 DNS 查找時,我得到了“正確/舊”的 IP 地址,這些地址也是由 guthub HERE官方記錄的。
root@server# host github.com 8.8.8.8 Using domain server: Name: 8.8.8.8 Address: 8.8.8.8#53 Aliases: github.com has address 192.30.253.112 github.com has address 192.30.253.113 github.com mail is handled by 10 ALT4.ASPMX.L.GOOGLE.com. github.com mail is handled by 10 ALT3.ASPMX.L.GOOGLE.com. github.com mail is handled by 5 ALT1.ASPMX.L.GOOGLE.com. github.com mail is handled by 1 ASPMX.L.GOOGLE.com. github.com mail is handled by 5 ALT2.ASPMX.L.GOOGLE.com.
但是,當我使用我的託管服務提供商 DNS 伺服器時,我會得到不同的結果:
root@server# host github.com 213.133.98.98 Using domain server: Name: 213.133.98.98 Address: 213.133.98.98#53 Aliases: github.com has address 18.195.85.27 github.com has address 35.159.8.160 github.com has address 18.194.104.89 github.com mail is handled by 1 ASPMX.L.GOOGLE.com. github.com mail is handled by 10 ALT4.ASPMX.L.GOOGLE.com. github.com mail is handled by 10 ALT3.ASPMX.L.GOOGLE.com. github.com mail is handled by 5 ALT1.ASPMX.L.GOOGLE.com. github.com mail is handled by 5 ALT2.ASPMX.L.GOOGLE.com.
當我聯繫我的提供商詢問他們為什麼提供這些結果時,他們說 githubs 的記錄已經改變。確實這似乎是正確的,因為當我再次使用 google dns 伺服器執行 githubs dns 記錄的跟踪時,我得到了“新”記錄:
root@server# dig github.com +trace @8.8.8.8 ... text omitted ... github.com. 172800 IN NS ns-520.awsdns-01.net. github.com. 172800 IN NS ns-421.awsdns-52.com. github.com. 172800 IN NS ns-1707.awsdns-21.co.uk. github.com. 172800 IN NS ns-1283.awsdns-32.org. CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN NSEC3 1 1 0 - CK0Q1GIN43N1ARRC9OSM6QPQR81H5M9A NS SOA RRSIG DNSKEY NSEC3PARAM CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN RRSIG NSEC3 8 2 86400 20171215054800 20171208043800 11324 com. mBRl9D0i8jmeYbtZzR527TfVtbq2x6RSECv23chq0usVGZzVCQz5BYbV JaWeaQ1QWRuTWz3snYFkQBaG7SLQbipDEaVaMgjQ9qnHitJxwzEYPTn0 mT5nweDT+IVqP3NpppB748HAr9IiqqNOar1IyQokv3S59E9cK+s1W3V0 Mik= 4KB3QDAGSO6KO9JK2O5F2FO8F4C5FTA2.com. 86400 IN NSEC3 1 1 0 - 4KB4PTQQ5CTA7POCTGM7RUFC8B1RKTEU NS DS RRSIG 4KB3QDAGSO6KO9JK2O5F2FO8F4C5FTA2.com. 86400 IN RRSIG NSEC3 8 2 86400 20171212052031 20171205041031 11324 com. DmETcOQrFR+iFYhCH4xGJT+khPaTF4Ay50o+FrdpBvRTOPT9WTFf1wOF Ew3cQlBGHdwS2TiT+tLsUlshkmiKZpdH753Lac9Z0ZBU6fcB/PWOwMQX NGPWwYZFrGb8I2QsEvQreBM+WcftfdHGXHn5ziUx8phz1lbJuQXhVYyl LBk= ;; Received 840 bytes from 192.43.172.30#53(i.gtld-servers.net) in 17 ms github.com. 60 IN A 18.195.85.27 github.com. 60 IN A 18.194.104.89 github.com. 60 IN A 35.159.8.160 github.com. 900 IN NS ns-1283.awsdns-32.org. github.com. 900 IN NS ns-1707.awsdns-21.co.uk. github.com. 900 IN NS ns-421.awsdns-52.com. github.com. 900 IN NS ns-520.awsdns-01.net. github.com. 900 IN NS ns1.p16.dynect.net. github.com. 900 IN NS ns2.p16.dynect.net. github.com. 900 IN NS ns3.p16.dynect.net. github.com. 900 IN NS ns4.p16.dynect.net. ;; Received 307 bytes from 205.251.198.171#53(ns-1707.awsdns-21.co.uk) in 12 ms
為什麼當我使用 google DNS 查詢 github.com 時,它會重新執行“舊 ips”,但是當我使用 dns 跟踪時,它會返回新的?Google dns 是否返回記憶體記錄(甚至在一天之後)?
另一方面,github會在不通知任何人的情況下更改他們的IP地址嗎?他們的文件沒有提到那些“新”的IP地址,據我研究,每當他們做出這樣的改變時,他們也會在他們的部落格上發布。
alex.forencich 對您的問題的評論可能解釋了您所看到的。
github.com 的 A 記錄可能會有所不同,具體取決於您從哪裡詢問。請記住,上一句中的“您”實際上是指您的伺服器的解析器正在與之通信的任何遞歸 DNS 伺服器。您的 ISP 的 DNS 伺服器使用位於德國法蘭克福的 AWS 的 eu-central-1 可用區中的 IP 進行響應 - 完全合理,因為您的 ISP 是 Hetzner。
我不知道 Google 的公共遞歸 DNS 伺服器是否有效,但是當您詢問時得到的答案似乎是針對北美的。
回到您最初詢問的原因,如果出於某種原因您需要知道您的內部主機將要與之交談的 IP,您需要查看它們用於 DNS 伺服器的內容,並使用相同的伺服器來獲取 IP 以用於您的防火牆規則。沒有一個“真正的”答案,所以你應該瞄準的是一致性。