sergey.s.betke
Well-Known Member
<r>Наткнулся на проблему на интерфейсах, на которых установлен ФПСУ IP Клиент. Пример проблемы описан здесь: <URL url="http://sergey-s-betke.blogs.novgaro.ru/klient-bank-sberbanka-sb-rf-fpsu-ipklient-amikon-i-isa-server-stroim-specializirovannyj-fpsu-marshrutizator#ping-f"><s></s><LINK_TEXT text="http://sergey-...nyj-fpsu-marshrutizator#ping-f</LINK_TEXT><e></e></URL>.
Процитирую:
<QUOTE><s>
Вопрос к разработчикам - что делать с этой проблемой? Из-за отсутствия ICMP ответа о необходимости фрагментации автоопределение MTU на хостах клиент-банка работать не будет, резать на них MTU сразу и на все направления - не очень бы хотелось.
Есть ли шанс дождаться редакции клиента, которая будет создавать именно новый виртуальный сетевой интерфейс для VPN соединения, естественно - правильно при этом расчитывая MTU (лучше всего - поддерживая при этом механизмы автоопределения размеров MTU для конкретного маршрута, и по алгоритму определения "чёрных дыр", и по корректным ответам ICMP).
Подобное решение снимет всякие проблемы с MTU, любая современная клиентская ОС "из коробки" будет прекрасно работать через ФПСУ VPN, не важно, какой канал при этом будет использован: сейчас клиентские ОС поддерживают алгоритмы автоопределения MTU (<B><s></s>EnableDeadGWDetect<e></e></B>, <B><s></s>EnablePMTUBHDetect<e></e></B>, <B><s></s>EnablePMTUDiscovery<e></e></B> в реестре MS Windows).
Сейчас же, из-за того, что NDIS фильтр меняет размер пакета механизмы автоопределения MTU на клиентах не работают.
Прошу откликнуться разработчиков. Есть ли шанс дождаться решения в какой-либо версии?</r>
Процитирую:
<QUOTE><s>
</e></QUOTE></s>
Очевидно, что фильтру Амикона требуется увеличить размер пакета, чтобы дописать свой заголовок. По результатам экспериментов – 28 байт требуется. В моём случае до ФПСУ банка допустим MTU 1500. Из-за дополнительного заголовка ФПСУ – 1472 байта. Первое, что приходит в голову – установить на интерфейсе Amicon MTU 1472.
Но не тут то было. Запускаем тест с рабочей станции Вашей сети:
<CODE><s></e></CODE>Код:</s>ping -t 213.148.164.75 -f -l -1470<e>
Флагом <B><s></s>–f<e></e></B> мы запрещаем фрагментацию пакетов. Размер пакета (1470) меньше MTU (1472), поэтому ICMP ответа “требуется фрагментация” не последует. <B><s></s>Но с заголовком размер пакета составит 1498<e></e></B>. Меньше 1500. Но ведь размер – больше MTU, поэтому и уйти такой пакет через сетевой интерфейс не сможет. И какой бы размер MTU мы не установили в реестре, проблема размером в 28 байт сохранится.
Не было бы никаких проблем, если бы ФПСУ IP клиент создавал новый виртуальный сетевой интерфейс, как и многие другие VPN решения, а не NDIS фильтр. Тогда не возникло бы и проблем с установкой MTU для этого нового виртуального интерфейса – берём MTU сетевого интерфейса, через который поднят VPN, вычитаем 28 – и получаем MTU виртуального Amicon VPN интерфейса. Судя по MSDN, фильтры не должны изменять размеры пакетов. А NDIS фильтр ФПСУ IP клиент – меняет. Отсюда и проблема.
Другими словами – с MTU проблема у ФПСУ IP-клиента. В любом варианте установки. При этом, если отправитель не выставит флаг “фрагментация запрещена” – проблем не будет (пакет будет фрагментирован, что подтверждается успешным выполнением ping –t 213.148.164.75 –l 2000). А если отправитель выставит этот флаг, и размер пакета будет меньше MTU сетевого интерфейса, но больше, чем (MTU-28 байт) – не будет и ICMP ответа о необходимости фрагментации, и пакет отправлен не будет.
<e>
Вопрос к разработчикам - что делать с этой проблемой? Из-за отсутствия ICMP ответа о необходимости фрагментации автоопределение MTU на хостах клиент-банка работать не будет, резать на них MTU сразу и на все направления - не очень бы хотелось.
Есть ли шанс дождаться редакции клиента, которая будет создавать именно новый виртуальный сетевой интерфейс для VPN соединения, естественно - правильно при этом расчитывая MTU (лучше всего - поддерживая при этом механизмы автоопределения размеров MTU для конкретного маршрута, и по алгоритму определения "чёрных дыр", и по корректным ответам ICMP).
Подобное решение снимет всякие проблемы с MTU, любая современная клиентская ОС "из коробки" будет прекрасно работать через ФПСУ VPN, не важно, какой канал при этом будет использован: сейчас клиентские ОС поддерживают алгоритмы автоопределения MTU (<B><s></s>EnableDeadGWDetect<e></e></B>, <B><s></s>EnablePMTUBHDetect<e></e></B>, <B><s></s>EnablePMTUDiscovery<e></e></B> в реестре MS Windows).
Сейчас же, из-за того, что NDIS фильтр меняет размер пакета механизмы автоопределения MTU на клиентах не работают.
Прошу откликнуться разработчиков. Есть ли шанс дождаться решения в какой-либо версии?</r>