Почему файфокс отваливается по поиску днс, если к сайту обращаешься по ip?
Сайт начал долго открываться не с того, не сего. Плюс периодически отваливается по таймауту в Хром, а в файрфокс пишет что не удалось найти такой. Перенес днс к другому хостеру, но это не помогло. Попробовал по ip - то же самое.
Вот сейчас файрфокс выдал - Время ожидания соединения истекло. В девелопер тулз:
Тайминг запроса
Заблокировано:
0 мс
Поиск DNS:
21,04 с
Соединение:
0 мс
Установка TLS:
0 мс
Отправка:
0 мс
Ожидание:
0 мс
Получение:
0 мс
Но я по ip обращаюсь, какой поиск днс?
Чем больше знаю, тем лучше понимаю, как мало знаю.
Время ожидания соединения истекло - значит сервер не ответил за то время, которое даётся на установление соединения. Что вы там делаете - совершенно не понятно, зачем коннектитесь по IP - тоже не понятно, откуда этот поиск DNS - тоже не понятно. Сделайте PING на доменное имя сервера, вот он и покажет, есть связь с сервером, или её просто нет. Конечно если на сервере PING не заблокирован.
Да доменная DNS запись закешировалась на твоём компьютере при первом запросе, и какое-то время в кеше провисит. А вот перебои связи с сервером здесь и сейчас - это PING и покажет. На Windows запускать с аргументом -t, что бы пинговал без остановки и пауз. Запускаешь - и открываешь сайт в браузере. Как проблема - смотришь окошко с PING-ом, есть провалы/разрывы?
Николай Савельев, можно тупо на сервере запустить tcpdump -nni any port 80 or port 443
и смотреть, есть пакеты запросов-ответов, или нет. Так будет понятно, это сеть запросы не доставила до сервера, или HTTP на них не ответил.
Поймать то поймал, теперь бы интерпретировать. Вот вывод tcpdump с момента нажатия обновить в браузере и до момента Хмм. Нам не удаётся найти этот сайт. Получается апач не отвечает?
Николай Савельев, да, совершенно верно, почему-то WEB-сервер ответил не на все коннекты. Пропустил первые 4 коннекта, и ответил только на 5-ый, с временем 07:00:07.984706.
Николай Савельев, вот этого не знаю. Собственно по логу можно судить только о том, что WEB-север иногда отвечает, но трафика нет.
Пакеты с данными имеют строчку [P.]. А у вас - или [S] (инициация коннекта), или [.] (подтверждение инициации), или [F.] (завершение коннекта, с подтверждением).
А где данные запроса, где данные хоть какого-то ответа, ошибки? Их нет. Браузер не получил данных с сайта, вот он и ругается об этом.
Я не знаток tcpdump. К вашему фильтру я добавил and (src src_ip or dst src_ip)' чтобы отфильтровать только свои запросы. Еще перевел все в файл > tcp.dump
После чего нажал обновить страницу и дождался окошка с Хмм. Нам не удаётся найти этот сайт.
И в логах апача ничего в это время нет. Ни ошибок, ни соединений. За 5 минут до этого времени есть, и через 2 минуты после. А в момент ошибки подключения - тишина.
AUser0, может до него не дошло. Вот в iptables обнаружил:
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 1/sec -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j DROP
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -m limit --limit 1/sec -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -j DROP
Кажется, низковаты лимиты. Не могло ли это повлиять?
С другой стороны, судя по датам изменения, устанавливались они 3 года назад. Работало же все до последнего времени.
Николай Савельев, ну вот и нашлась причина вашей проблемы. Поставите хотя бы --limit 3/sec, максимум 3 соединения в секунду с одного удалённого IP. А ещё очень желательно включить HTTP/2.0 в WEB-сервере, полегчает.
AUser0, да, вы правы, после увеличения лимитов ошибки пропали.
Вынесете ваш коммент с tcpdump в отдельный ответ чтобы я отметил? Или просто верхний ваш поставить решением?
Ты ж на сервере не один сидишь. С чего он тебе по IP ответит.
Пингуй доменное, смотри что по провалам будет. Пока похоже на проблемы с сетью / web сервером
Drno, пинг отличный, ссш работает идеально. Только в браузере проблема. Причем и по днс имени и по ip.
Опубликовал голую хтмл страницу чтобы дергать по адресу отдельно от сайта - все те же самые проблемы.
Проверь что у тебя браузер не использует какую-нибудь прокси (автоконфигурация по умолчанию или .pac файл), а так же не установлен какой-нибудь антизапрет впн или аналоги, в общем запусти браузер в новом чистом профиле (с ключом --ProfileManager )
если у тебя не установлена поддержка https на твоем сайте, указывай конкретный протокол http:// перед ip адресом, так как скорее всего он пытается подключиться сразу по https и не может