Наверное, вопрос новичка, но объясните, пожалуйста, какие изменения в разрешении имен, если я добавлю точку в конце имени домена? (файл hosts пуст, проблем не должно быть)
>>> print socket.getaddrinfo('google.com',0)[0][4][0]
216.58.212.238
>>> print socket.getaddrinfo('google.com.',0)[0][4][0]
64.233.167.113
Две разные вещи, добавление конечной точки . классифицирует имя хоста как полное доменное имя (FQDN). Явное добавление этого параметра предотвращает добавление поискового домена.
Т.е. с доменом поиска example.com.
имя хоста, такое как google.com
без конечной точки , может быть разрешено как google.com.example.com.
. (Многие преобразователи активно предотвращают это и рассматривают любое имя хоста, содержащее одну или несколько точек, как подразумеваемое полное доменное имя и добавят конечный., А не поисковый домен).
Однако, вероятно, это не то, что происходит в ваших примерах с google.com.
Причина, по которой последующие запросы одной и той же записи приводят к разным ответам, заключается в том, что было определено несколько записей, метод балансировки нагрузки называется циклическим DNS .