| 
 | 1.2, scamp (??), 17:54, 16/03/2007  [ответить] [﹢﹢﹢] [ · · · ] | +1 +/– |  | Сам с месяц назад напоролся на такую проблему. решение заняло около 3 часов. после консультации с сетевым специалистом, начал копать в сторону mtu (хотя подозрения на этот счет были сразу). поиск по конфигам shorewall (именно им пользуюсь для удобства управления iptables. рекомендую всем) привел к интересным коментариям:  [From the kernel help:
#
 #    This option adds a 'TCPMSS' target, which allows you to alter the
 #    MSS value of TCP SYN packets, to control the maximum size for that
 #    connection (usually limiting it to your outgoing interface's MTU
 #    minus 40).
 #
 #    This is used to overcome criminally braindead ISPs or servers which
 #    block ICMP Fragmentation Needed packets.  The symptoms of this
 #    problem are that everything works fine from your Linux
 #    firewall/router, but machines behind it can never exchange large
 #    packets:
 #        1) Web browsers connect, then hang with no data received.
 #        2) Small mail works fine, but large emails hang.
 #        3) ssh works fine, but scp hangs after initial handshaking.
 # ]
 Собственно решение превратилось в активацию в shorewall опции
CLAMPMSS=Yes
 |  |  | 
 
|  | | 2.36, riv1329 (?), 17:20, 03/02/2012 [^] [^^] [^^^] [ответить] | +/– |  |  В 2011 году CLAMPMSS=Yes в конфиге shorewall всё еще актуален. Хотя было-бы логично включать эту опцию по умолчанию. Спасибо за информацию.
 |  |  | 
 | 
 
 | 1.3, _Kuzmich (??), 08:53, 19/03/2007  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  >iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu В мануале написано, что данное правило работает только в таблице mangle, незнаю как у вас оно отрабатывает в таблице filter, у меня такое не проходит. |  |  | 
 
 | 1.4, greg (??), 20:13, 27/05/2007  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  | поправка : iptables -A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
 |  |  | 
 
|  | | 2.5, omegas (ok), 10:31, 04/12/2007 [^] [^^] [^^^] [ответить] | +/– |  |  перепробовал все, ограничение мту не помогло. Решилось все красиво, вот такой строчкой в цепочке mangle: -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1300 
 |  |  | 
 |  | | 3.19, Variable (?), 14:32, 18/12/2009 [^] [^^] [^^^] [ответить] | +/– |  | А вот этому пути лучше не следовать. Дело в том, что если у вас где-то по дороге окажется сайт, у которого MSS окажется меньше 1300 , то он его увеличит до 1300 и у вас могут возникнуть проблемы с фрагментацией пакетов! 
 |  |  | 
 | 
 | 
 
 | 1.6, DemoN (??), 16:57, 09/03/2008  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Была аналогичная проблема с L2TP содинением. Исходищее соединение L2TP с MTU 1460 (от Корбины), внутренная квартирная сеть на Ethernet... Долго понять не мог почему часть сайтов работает, а часть нет... После длительного установления проблемы, пришел к решению с iptables...
 
 |  |  | 
 
 | 1.7, ciwl (??), 02:24, 03/04/2008  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  respect! 3-й день ломаю голову... уже тож хотел проксик ставить =) 
 |  |  | 
 
 | 1.8, Аноним (-), 11:26, 12/05/2008  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  | Стать класс Уже вообще хотел от Linux отказаться т.к. прокси не подходил
 
 |  |  | 
 
 | 1.9, Ламо (?), 02:12, 08/11/2008  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Век живи, век учись... Моя ситуация - Ноутбук+обычный ПК подключены к D-Link DSL-2640U, ноут по ВайФай.
 На ноуте одноклассники.ру работают, на компе нет, причем на компе явные тормоза при работе в нете - половина сайтов не открывается... Я уж и антивиром прогнал комп, и переустанавливать задумал, но... засада в МТУ. Причем, где-то на Microsoft.com прочитал, что изначальное значение MTU определяется драйверами для сетевой карты. Ессно, я посмотрел в реестре на буке (знач. 1300) и на ПК (1500). На ПК поставил 1300 и все заработало...
 Такие вот пироги
 
 |  |  | 
 
 | 1.10, merax (??), 18:50, 30/11/2008  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Аналогично была проблема с Cisco 2651 c модулем ADSL. Что самое интересное mail.ru открывался, а вот r.mail.ru посылал в null. Решил проблему вот так - 
 ip tcp adjust-mss 1452
 ip policy route-map clear-df
 
 |  |  | 
 
 | 1.11, Борис (??), 00:35, 20/12/2008  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Та же самая проблема, провод от корбины с MTU 1460 попадает на сервер Windows 2000, который через вторую сетевуху раздает инет на клиенты. На серваке стоит RRAS. Инет с клиентов без ручной переустановки MTU не работает ((( 
 |  |  | 
 
 | 1.12, Penguin (?), 11:24, 17/04/2009  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Подниму своим спасибом, напоролся при раздаче Йоты на мелкий офис. Помогло :-) 
 |  |  | 
 
 | 1.13, Bill Routers (??), 01:59, 02/06/2009  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Перешел  с Ubu на Deb, а он не выставил при настройке ppp0 mtu, искал часов 5 думал с ума сойду, на ядре 2.6.24 работает на 2.6.26 нет, при этом конечно, как указано в статье, локальный комп. в Internet нормально ходит, а остальные через NAT фиг.
 
 |  |  | 
 
 | 1.14, YuSt (?), 17:51, 04/09/2009  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Действительно спасибо!, нарвался на "умников", которые закрыли ICMP 3:4, думал мозгами двинусь, пока искал проблему... Самое смешное, что эти "товарищи" - админы банка, у них видете-ли политика безопасности такая ;) 
 |  |  | 
 
|  | | 2.21, Greg (??), 09:36, 13/04/2010 [^] [^^] [^^^] [ответить] | +/– |  | > Самое смешное, что эти "товарищи" - админы банка, у них видете-ли > политика безопасности такая ;)
 Гы... верняк, только что столкнулся именно с такой ситуацией.
Банк-клиент не хотел работать через ppp туннель, потому что банковский хост не блочит icmp.
 
 
 |  |  | 
 | 
 
 
 | 1.16, Вася (??), 02:27, 05/10/2009  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  | Очень полезная статья! Автору огромнейшее спасибо! Все мои проблемы с настройкой шлюза сразу решились! 
 |  |  | 
 
 | 1.18, TITO (?), 18:25, 28/10/2009  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Спасибо огромное добрый человек, очень выручил, здоровья те и удачи) 
 |  |  | 
 
 | 1.20, Анатолий (??), 13:56, 31/03/2010  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Автору огромный респект, я тоже столкнулся с такими клоунами (mtu 1490), почтовики через pop3 получали список писем а сами письма нет, соединение вешалось. С самого шлюза все работало нормально 
 |  |  | 
 
|  | | 2.26, Andrew.D.Mashkov (?), 15:40, 10/12/2010 [^] [^^] [^^^] [ответить] | +/– |  | Та же проблема, не бегает pop3 хоть убей, все остальное - номрально. Добавление строки к сожалению проблемы не решили. Все равно конект есть, письма не забираются. Может подскажете куда еще копнуть?
 
 |  |  | 
 | 
 
 | 1.22, Iv (??), 12:19, 08/05/2010  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  | Автор - мегачеловек! Огромнейшее спасибо! Я бился с клиент-банком 2 дня. После общения с серваком по телнету понял что копать надо в сторону МTU. И тут такой подарок! 
 |  |  | 
 
 | 1.23, Андрей (??), 16:30, 04/08/2010  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Всё это хорошо, только вот проблема. Почему -j TCPMSS --clamp-mss-to-pmtu высчитывает MSS как MTU-40 (т.е.20-IP, 20-TCP)? Проснифил. У меня на Windows 7 TCP заголовки сплошь и рядом идут более 20 байт. Доходит до 56! Соответственно эти пакеты не проходят и дропаются. Все MSS уменьшать до мин.значения с учётом TCP-56 - равносильно уменьшению скорости для пакетов с размером TCP-20. Почему в iptables нету автоматической определялки MSS?! 
 |  |  | 
 
|  | | 2.25, Андрей (??), 09:06, 24/09/2010 [^] [^^] [^^^] [ответить] | +/– |  |  Потом уже разобрался. Заголовок TCP+IP более 40 байт только во время установления TCP сессии. В это время пакеты небольшие и не достигают MTU в любом случае. А вот во время передачи, когда пакеты большие, заголовок равен ровно 40 байт. 
 |  |  | 
 | 
 
 | 1.24, Сергей (??), 17:30, 23/09/2010  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Всё это замечательно. Спасибо огромное за статью. В инете вообще мало информации о MTU. Но есть вопрос такого плана - а что, в обычных пакетах с HTTP нагрузкой (хотя не важно что там внутри, может быть и FTP или что-то ещё) всегда устанавливается бит DF? И если да, то зачем?
 |  |  | 
 
 | 1.27, Олег Рева (?), 16:16, 23/12/2010  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  А вот за это спасибо!! iptables -I OUTPUT 1 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
 iptables -I FORWARD 1 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
 Реально помогло.
 |  |  | 
 
 | 1.28, OEM_щука (?), 23:12, 24/05/2011  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  | А теперь для Микротика: в профайле выбирает no в пункте change mss, и далее выполняем в терминале эту строку:
 / ip firewall mangle add chain=forward protocol=tcp tcp-flags=syn tcp-mss=1453-65535 action=change-mss new-mss=1360  disabled=no
 |  |  | 
 
 | 1.29, Alex (??), 16:12, 02/09/2011  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Сделал как тут написано через iptables пипец, раньше сайты грузились 5 минут, теперь вабще не грузятся, пишет чото там про DNS
 чо делать?
 |  |  | 
 
 | 1.30, Alex (??), 16:16, 02/09/2011  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  причему чтобы команды подействовали нужен префикс sudo у меня убунту стоит на wmware в винде сайты грузятся, а в убунту нет
причем раньше грузились но по 2-3 минуты, после вашего способа ваще не грузятся пишет:
 Веб страница не доступна
проверьте DNS бла бла бла бла бла и тд
 |  |  | 
 
|  | | 2.31, Андрей (??), 16:32, 02/09/2011 [^] [^^] [^^^] [ответить] | +/– |  | > причему чтобы команды подействовали нужен префикс sudo > у меня убунту стоит на wmware в винде сайты грузятся, а в
 > убунту нет
 > причем раньше грузились но по 2-3 минуты, после вашего способа ваще не
 > грузятся пишет:
 > Веб страница не доступна
 > проверьте DNS бла бла бла бла бла и тд
 От этой команды не может перестать грузиться:)
 |  |  | 
 |  | | 3.32, Alex (??), 16:47, 02/09/2011 [^] [^^] [^^^] [ответить] | +/– |  |  Тем не менее факт остается фактом =) проблема в том что я даже (как одно из решений) днс сервера задать не могу, потому что мой провайдер их не говорит, в справочники пользователя для всех ОСей пунктик стоит определять dns автоматически =) я хз чо делать
 
 |  |  | 
 | 
 | 
 
 
 | 1.34, Alex (??), 11:56, 04/09/2011  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Ухахаха смотрели видео один день админа? когда он просил ламера перегрузиться 3 раза?)
 Так вот пока писал эту команду ребутился раза 2 инет так и не заработал! забил вот наследующий день загрузил убунту все летает =)
 надо было просто ребутиться 3 раза ;)
 |  |  | 
 
 | 1.35, Андрей (??), 14:15, 15/09/2011  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Включите реакцию на ICMP и не парьтесь. По секрету - ICMP бывает с полезным payload'ом. В частности, получатель может попросить уменьшить размер пакета.
 
 |  |  | 
 
 | 1.37, wolf10 (?), 19:03, 19/08/2012  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  | Большой поклон автору :) Второй день мучаюсь почему rutracker.org не может открыться. Решил проблему с iptables -A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu 
 |  |  | 
 
|  | | 2.38, funditus (?), 09:02, 22/08/2012 [^] [^^] [^^^] [ответить] | +/– |  | > Большой поклон автору :) Второй день мучаюсь почему rutracker.org не может открыться. > Решил проблему с iptables -A FORWARD -p tcp -m tcp --tcp-flags
 > SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
 Правильней было бы:
iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
 Именно в таблице mangle. См. man iptables.
 |  |  | 
 | 
 
 | 1.39, Ivan Drago (?), 06:18, 02/09/2012  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  | У меня такая ситуация. Провайдер NetByNet, протокол PPPoE.
 Если шнур воткнуть в комп напрямую, инет замечательно работает.
 Если через роутер Asus RX3041H (работает на линуксе), начинаются проблемы:
 - многие сайты грузятся с тормозами;
 - при попытке проиграть видео на ютубе, оно может загрузиться частично, для дальнейшей загрузки нужно передвинуть ползунок;
 - на сайте нтв.ру видео либо не проигрывается вообще, либо грузится по 1% за полчаса.
 Ставил разные значения MSS в роутере. Ничего не меняется.
 Как заставить роутер нормально работать?
 
 |  |  | 
 
|  | | 2.41, Nas_tradamus (ok), 10:23, 30/10/2012 [^] [^^] [^^^] [ответить] | +/– |  |  Ну у меня на dd-wrt помогло NetBynet такое: iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
 Таких глюков как у вас я не наблюдал, но иногда они возникали: то какой-нибудь сайт перестает открываться на одном из компов (не более минуты глюк), то еще какой прикол с ютьюбом. Главное что бесило: после ребута роутера сайты минут 5 нормально не открывались - открывалось лишь несколько, а остальные не были доступны, потом все становилось нормально. Но 99% времени все работало хорошо. Кстати, посмотрите выставлено ли значение MTU 1492 в самом подключении pppoe.
 |  |  | 
 |  | | 3.43, Ivan Drago (?), 07:19, 02/09/2013 [^] [^^] [^^^] [ответить] | +/– |  | (Разгребая закладки, наткнулся на сайт, где я год назад оставил сообщение.) Спасибо за помощь. Скорее всего, старый роутер (ASUS RX3041H) вышел из строя, поэтому работал с такими глюками. С новым роутером (ASUS RT-N66U) всё работает как надо.
 Где нужно прописывать команду "iptables..."?
 
 |  |  | 
 | 
 | 
 
 | 1.40, DrTiE (?), 00:09, 18/10/2012  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  У меня провайдер NetByNet модем ZTE ZXV10 W300 все настраиваю но в инет не входит. в чем проблема... 
 |  |  | 
 
 | 1.42, netc (??), 12:55, 14/07/2013  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  | спасибо большое - если не сказать огромное !!! правило с iptables сработало
 |  |  | 
 
 | 1.44, Алексей (??), 20:39, 03/11/2013  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  этой волшебной строчки не хватало для полноценного моста из ящика на линуксе с ppp на wlan вот весь мост
 echo 1 > /proc/sys/net/ipv4/ip_forward
 iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
 iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
 iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
 
 |  |  | 
 
|  | | 2.45, funditus (?), 08:24, 04/11/2013 [^] [^^] [^^^] [ответить] | +/– |  | > этой волшебной строчки не хватало для полноценного моста из ящика на линуксе > с ppp на wlan
 > вот весь мост
 > echo 1 > /proc/sys/net/ipv4/ip_forward
 > iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
 > iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
 > iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
 Это не мост, а маршрутизатор, да и очень специфичный (натится на оба интерфейса).
 |  |  | 
 | 
 
 | 1.46, Vitto (?), 00:39, 12/05/2015  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Сегодня столкнулся, чуть умом не тронулся пока искал в чем засада.. В убунте, в /etc/ppp/ip-up.d/0clampmss лежит эта настройка такого вида:
 
 
 iptables -t mangle -o "$PPP_IFACE" --insert FORWARD 1 -p tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:65495 -j TCPMSS --clamp-mss-to-pmtu
 
 
 
 так вот, если луна стоит в правильной позиции и ты вдруг про эту настройку не знаешь и трешь все правила iptables перед тем, как залить свой набор правил, жди сюрпризов..
 В любом случае спасибо за статью!!!
 |  |  | 
 
 | 1.50, procsik (ok), 15:49, 09/12/2018  [ответить] [﹢﹢﹢] [ · · · ] | +/– |  |  Если сам шлюз инициирует соединение, то пакет не пройдёт через FORWARD, поэтому лучше записать это на выходе в POSTROUTING (например, для интерфейса ppp0): iptables -t mangle -A POSTROUTING -p tcp --tcp-flags SYN,RST SYN -o ppp0 -j TCPMSS --clamp-mss-to-pmtu
 И нужно учесть то, что по-умолчанию pppd через pppoeconf ставить mtu:1492. Придётся замерить с другого шлюза реальный MTU:
 ping -M do <ipaddr> -s <MTU>, где MTU это значение с учётом ICMP. Например, если 1452 проходит, то в конфиг pppoe нужно записать 1452+28, т.е. 1480. Тогда --clamp-mss-to-pmtu сам будет выставлять 1480-20-20, т.е. 1440 Что является правильным. 
 |  |  | 
 
 
 
 |