Наконец, я готов доложить результаты. Все успешно пингуется и трассируется из под Windows между двумя сетями, а большего мне не надо.
Я отталкивался от этих двух тезисов и результатов поиска по форуму.
Stanislav Kozlov писал(а):
2. Для трассировки нужно выполнить все те же правила, что и для трассировки объектов в интрнет:
а) Выключить за наблюдением TTL.
Это означает, что в правиле, разрешающем трассировку для Windows, должны быть разрешены ICMP запросы
Echo Request и включена галочка
"Pass returned from ICMP error messages from destination".
Stanislav Kozlov писал(а):
б) Создать правило lan->core/ipsec->core
Вот тут вкралась неточность. Правило
lan->core / ipsec->core нужно для пинга и для последнего хопа в трассировке, который и обрабатывается как пинг. Правило для трассировки должно быть вида
lan->remote_lan / remote_lan->lan.
А сейчас я полностью опишу, что проделал, чтобы добиться полного прохождения в Windows трассировки и пингов между двумя сетями, соединенными по IPSec.
Для трассировки и пингов формируются отдельные правила. Я их по отдельности и опишу.
ДЛЯ ТРАССИРОВКИ:
Примечание: Чтобы отображались первые 2 хопа не надо забывать изменить параметр
"System -> Advanced Settings -> IP Settings -> TTL Min:" с 3 на
1.
1-й вариант:
Один простой и правильный путь. Создать 2 правила для трассировки в обе стороны. Они должны располагаться выше двух правил для сервиса
all_services в оба направления:
trace_ipsec Allow lan lannet fw_Sklad-ipsec fw_Sklad-remotenet ping-outbound
trace_ipsec Allow fw_Sklad-ipsec fw_Sklad-remotenet lan lannet ping-outbound
2-й вариант, мой:
Мои цели:
- добиться прохождения трассировки туда, куда назначаю полный доступ;
- минимизировать количество используемых правил;
- не изменять сервисы, созданные по умолчанию;
- минимизировать количество вносимых изменений в собственные сервисы, созданные на основе существующих по умолчанию.
Свежая модификация: Цели полного доступа с разрешением трассировки из под Windows и Unix, а также разрешением pptp-passthough, можно достичь созданием и разрешением в правилах сервиса IPProto 0-255 с установленной галочкой
"Pass returned ICMP error messages from destination". У меня этот сервис называется
All_services_n_trace. Это позволит во многих случаях обходиться одним разрешающим правилом.
Старая модификация:
В целом, я создаю и использую service, идентичный
all_services, но с добавлением включенной галки
"Pass returned from ICMP error messages from destination" для типа
Echo Request.
Для этого я создаю 3 сервиса:
1.
All_icmp_except_trace. Аналог
all_icmp, только отключен
Echo Request
2.
All_tcp_udp Аналог
all_tcpudp, но созданный не как группа сервисов, а как один сервис для обоих протоколов
TCP/UDP.
3.
All_services_n_trace. Группа сервисов. Включает в себя:
All_icmp_except_trace,
All_tcp_udp,
ping-outbound. Аналог
all_services, но со включенной трассировкой.
Далее я редактирую правила, созданные для связи двух сетей по IPSec и они приобретают следующий вид:
allow_all Allow lan lannet fw_Sklad-ipsec fw_Sklad-remotenet All_services_n_trace
allow-all Allow fw_Sklad-ipsec fw_Sklad-remotenet lan lannet All_services_n_trace
Попутно мне это позволяет изменить правила, созданные мастером первоначальной настройки:
- измененное
allow_standard NAT lan lannet wan_all all-nets All_services_n_trace
- удаленное, т.к. его функционал уже обеспечен предыдущим правилом.
allow_ping-outbound NAT lan lannet wan_all all-nets ping-outbound
Весь этот довольно длинный путь я делаю ради того, чтобы в дальнейшем вместо правила
all_services всегда использовать
All_services_n_trace, т.к. хочу, чтобы трассировка работала везде.
3-й вариант:
Это для самых свежих прошивок не подходит. Для ленивых и не очень щепетильных есть быстрый путь. Поскольку сервис
all_icmp входит в состав
all_services, в существующем правиле
all_icmp поставить галочку
"Pass returned from ICMP error messages from destination".
На этом с трассировкой я закончил.
ДЛЯ ПИНГА:
В папке
IP Rules к правилу
ping_fw Allow lan lannet core lan_ip ping-inbound
добавить аналогичное для IPSec канала и удаленной подсети
ping_fw_ipsec Allow fw_Sklad-ipsec fw_Sklad-remotenet core lan_ip ping-inbound
Вот и все, ребята!
P.S. Для трассировки из Unix систем должен быть разрешен сервис
traceroute-udp.
Принимается конструктивная критика и замечания.
Ключевые слова: ipsec IPSec трассировка trace route traceroute tracert windows пинг ping DFL-210 DFL 210 800 1600 2500