Что такое полное доменное имя и как его узнать? - PullRequest
0 голосов
/ 18 июня 2020

Теперь я понял концепцию FQDN, но небольшой эксперимент добавил мне в заблуждение. У меня 2 машины:

  1. Linux машина, которая удалена и подключена через VPN.
  2. Ma c машина, которая у меня физически со мной и подключена к моему домашнему интерфейсу rnet.

Я использовал python 2.7 socket lib, чтобы получить полное доменное имя некоторых доменов, и вот результаты:

На моем Linux компьютере:

>>> socket.getfqdn('www.google.com')
'sfo07s17-in-f68.1e100.net'

На моем компьютере Ma c:

>>> socket.getfqdn("www.google.com")
'maa03s26-in-f4.1e100.net'

В приведенном выше случае результаты отличаются. Я пробовал с cs.gatech.edu на обеих машинах, и в этом случае результаты совпадают:

Linux:

>>> socket.getfqdn('cs.gatech.edu')
'scouter.cc.gatech.edu'

Ma c:

>>> socket.getfqdn("cs.gatech.edu")
'scouter.cc.gatech.edu'

Затем я попытался использовать другой домен, состоящий из 3 частей:

Linux:

>>> socket.getfqdn('https://search.amazondelivers.jobs/')
'https://search.amazondelivers.jobs/'

>>> socket.getfqdn('search.amazondelivers.jobs')
'a23-48-12-88.deploy.static.akamaitechnologies.com'

Ma c:

>>> socket.getfqdn('https://search.amazondelivers.jobs/')
'https://search.amazondelivers.jobs/'

>>> socket.getfqdn('search.amazondelivers.jobs')
'a172-232-11-99.deploy.static.akamaitechnologies.com'

Результат, в котором имя хоста содержит https соответствует, а без него - нет. Может кто-нибудь объяснить мне, что именно здесь происходит? Для меня это действительно важно понять, потому что я пытаюсь реализовать функциональность в Golang, чтобы получить полное доменное имя для любого заданного имени хоста.

За дополнительной информацией обращайтесь.

...