Если Firefox долго ждёт подключения к сайту
2011.05.15
Если честно, долго думал, какой заголовок поставить к этой записи. Дело в том, что столкнулся с невероятным глюком, еле разобрался, в чём дело.
При попытке залогиниться на blogger или даже просто открыть картинку из выдачи результатов поиска по изображениям в Гугле (!) браузер спотыкается на шаге ожидания результатов с сервера. Выводит «waiting for google.com» в строке состояния и всё. Иногда по тайм-ауту дело кончается тем, что Фаерфокс показывает белый экран и всё. Те же симптомы проявляются при попытке загрузить какое-нибудь изображение куда-либо, вообще любой файл. Отправка сообщений в дурацком Вконтакте так же «виснет».
Как оказалось, дело в настройке маршрутизаторов у провайдера, и, хотя в подобных случаях всё должно быть очень печально, с этой проблемой можно справиться и настройками на локальном компьютере.
Проблема в значении MTU (Maximum Transmit Unit) для передаваемых пакетов. Если на маршрутизаторе на провайдере стоит, скажем, 1460, а у вас отправляются по 1498 (традиционно для ADSL), то вы, как говорится, out of luck. Поэтому надо указать в настройках сетевой карты, что отправлять данные мы будем теперь более маленькими кусочками.
MTU указывается как для непосредственно сетевого интерфейса, так и для PPPoE подключения. У меня лично на домашнюю сеть роутер раздаёт интернет, поэтому настройки MTU указаны в его веб-интерфейсе, и здесь я о них говорить не буду.
Для сетевого интерфейса надо сделать так:
# ifconfig eth0 mtu 1400
Вместо eth0 указать ваш сетевой интерфейс, мало ли, может, у вас eth1. :) 1400 лично для меня оказалось достаточно.
Эти изменения временны. Для того, чтобы они зафиксировались и восстанавливались после перезагрузки, надо добавить вышеприведённую строчку в файл
/etc/rc.local
Если PPPoE соединение устанавливается не роутером, как у меня, а непосредственно компьютером, то надо добавить в файл
/etc/ppp/options
где, собственно, и хранятся настройки PPP соединения, строчку
mtu 1400
В принципе, строчка «mtu» там уже есть, достаточно раскомментировать её и поменять на 1400.
На этом всё, автомагия сработает даже без перезагрузки компьютера. Перепроверять не хочу, но для уверенности я перезапустил сетевой интерфейс после внесения изменений.
За решение проблемы спасибо офигенным чувакам с Линуксфорума, которых я успешно нагуглил: http://linuxforum.ru/viewtopic.php?id=12026.