У меня конфигурация StrongSWAN, вдохновленная в trap-any
прецедент:
conn %default
ikelifetime=60m
keylife=20m
rekeymargin=3m
keyingtries=1
conn lan
right=%any
leftsubnet=fd12:3456:7890:abcd::/64
rightsubnet=fd12:3456:7890:abcd::/64
type=transport
authby=psk
auto=route
Это автоматически согласовывает SA с любой системой в моей локальной подсети, к которой я пытаюсь подключиться; в общем, делает все правильно.
Однако при многоадресной рассылке на всю подсеть:
ping6 -I fd12:3456:7890:abcd::1234 ff02::1
... я не только получаю ответы и устанавливаю ассоциации безопасности с другими системами (ура!), но у меня есть две отдельные ассоциации безопасности, сгенерированные для связи с сам локальный хост, с участием fd12:3456:7890:abcd::1234
как инициатор и ответчик.
Первой моей мыслью было избежать этого вот так:
conn local
type=passthrough
left=fd12:3456:7890:abcd::1234
right=fd12:3456:7890:abcd::1234
... но на самом деле это не предотвращает петлевые соединения.
Напротив, с:
conn local
type=passthrough
right=%any
rightsubnet=fd12:3456:7890:abcd::1234/128
... ассоциации безопасности не установлены вообще.
Как мне избежать SA для локального трафика в этом режиме?
Уроки выучены:
leftsubnet
и rightsubnet
auto=route
даже для passthrough
подключение.Таким образом:
conn local
type=passthrough
right=%any
leftsubnet=fd12:3456:7890:abcd::1234/128
rightsubnet=fd12:3456:7890:abcd::1234/128
auto=route
Большое спасибо Thermi на IRC-канале #strongswan.