Сегодня с утра обнаружил, что не могу войти на Gmail. В Google+ — тоже, но поиск работает нормально. С телефона при этом все работало, и приложение, и веб-интерфейс.
Решение нашлось, кому не интересна методология — оно в самом конце.
Гугление показало, что я такой не один. Сайтик оказался (не сочтите за пиар) полезен, на карте отчетливо видно, что под проблему попали в России и СНГ.
Краткое исследование дало понять некоторые интересности.
Например, что серверы гугла пингуются, но с 80-го порта ничего не отвечают.
Сперва соединялись, но молчали, затем перестали соединяться вообще.
$ curl mail.google.com
curl: (7) Failed to connect to mail.google.com port 80: Connection timed out
$ traceroute -n mail.google.com
...
8 173.194.122.214 22.630 ms 22.444 ms 22.264 ms
«Что-то мало адресов для гугла», — подумал я и решил сравнить выдачу публичных dns-серверов провайдера, гугла (8.8.8.8) и яндекса (78.8.8.8):
$ nslookup
> mail.google.com
Server: 127.0.0.1
Address: 127.0.0.1#53
Non-authoritative answer:
mail.google.com canonical name = googlemail.l.google.com.
Name: googlemail.l.google.com
Address: 173.194.44.54
Name: googlemail.l.google.com
Address: 173.194.44.53
Для пабликов гугла:
> mail.google.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
mail.google.com canonical name = googlemail.l.google.com.
Name: googlemail.l.google.com
Address: 173.194.122.214
Name: googlemail.l.google.com
Address: 173.194.122.213
Для яндекса:
> mail.google.com
Server: 77.88.8.8
Address: 77.88.8.8#53
Non-authoritative answer:
mail.google.com canonical name = googlemail.l.google.com.
Name: googlemail.l.google.com
Address: 173.194.32.182
Name: googlemail.l.google.com
Address: 173.194.32.181
Разница очевидна. Проверяем разные адреса, и выясняется, что не работают именно те адреса, которые выдаются публичными dns-серверами гугла.
Не работают ни G+, ни календарь, ни диск, даже googleusercontent.com, что выдает юзерпики и картинки — не отвечает.
Но только стоит заменить DNS-серверы для доменов *.google.com и *.googleusercontent.com на серверы Яндекса — все начинает работать!
Сперва подозревал, что наши чебурашки что-то выдумали, но оказалось, что та же ситуация с этими адресами наблюдается из Европы.
IP расположен в Калифорнии, если мне не врет геоайпитул.
Подозрительно, что упали только те серверы, которые выдаются пабликом. Либо не справились с нагрузкой, либо кто-то успешно атаковал, что менее вероятно.
Однако, и в том, и в другом случае, полагаю, гугл бы быстро сменил DNS-запись. Проверим TTL:
$ nslookup
> server 8.8.8.8
Default server: 8.8.8.8
Address: 8.8.8.8#53
> set debug
> mail.google.com
Server: 8.8.8.8
Address: 8.8.8.8#53
------------
QUESTIONS:
mail.google.com, type = A, class = IN
ANSWERS:
-> mail.google.com
canonical name = googlemail.l.google.com.
ttl = 21599
-> googlemail.l.google.com
internet address = 173.194.122.245
ttl = 299
-> googlemail.l.google.com
internet address = 173.194.122.246
ttl = 299
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
------------
Non-authoritative answer:
mail.google.com canonical name = googlemail.l.google.com.
Name: googlemail.l.google.com
Address: 173.194.122.245
Name: googlemail.l.google.com
Address: 173.194.122.246
Заметим, что TTL всего 300 секунд, и даже адреса изменились, но соединения с ними нет всё равно.
Такие дела.
Резюме: у гугла есть проблемы.
Совет: кто столкнулся — временно укажите своей системе (роутеру, DNS-серверу) другие DNS, например, Яндекса.