Мне нужно инкапсулировать IPv4 в IPv6 для целей маршрутизации. Один конец - это Linux-система с quagga, а другой конец - Mikrotik CCR2004. Как?
Мы собираемся использовать для этого идентификаторы PSK, потому что это связь точка-точка, и нет причин усложнять ее сертификатами. Это работает в Ubuntu 20.04 и RouterOS 6.48.1.
На стороне Mikrotik просто сделайте это (настоящая проблема заключается в согласовании Strongswan). Если вы используете профили IPSec по умолчанию для чего-то еще, вы не можете настроить это так, как я, если все не могут использовать одну и ту же спецификацию безопасности.
/ip ipsec proposal change 0 auth-algorithms=sha512 enc-algorithms=aes-256-cbc pfs-group=ecp521
/ip ipsec profile change 0 hash-algorithm=sha512 enc-algorithm=aes-256 dh-group=ecp521 nat-traversal=no
/interface gre6 add name=gre-whatever local-address=2002:1234::1 remote-address=2002:4321::1 ipsec-secret=changeme
Создайте туннель GRE в Linux:
ip -6 tunnel add gre.wat remote 2002:1234::1 local 2002:4321::1
Для strongswan настройте /etc/ipsec.secrets
:
2002:1234::1 2002:4321::1 : PSK changeme
Для /etc/ipsec.conf
:
conn sea1
fragmentation=yes
keyexchange=ike
authby=secret
ike=aes256-sha2_512-ecp521!
esp=aes256-sha2_512-ecp521!
left=2002:4321::1
leftid=2002:4321::1
leftsubnet=%dynamic[gre]
right=2002:1234::1
rightid=2002:1234::1
rightsubnet=%dynamic[gre]
auto=route
type=transport
Теперь вы можете настроить IPv4-адреса на любом конце туннеля, и они будут туннелироваться с MTU 1390 (если вы не включите MTU = 9000).
Подобно тому, что было опубликовано Falcom Momot выше, вы можете найти целую вики-страницу, которую я сделал для различных программ VPN, и ссылки на них здесь https://wiki.pttlink .org/wiki/VPN
У меня есть раздел IPSEC, в котором рассматриваются ссылки strongSwan на MikroTik.
Следующее взято из этого раздела:
Конфигурация strongSwan
Следующая конфигурация будет работать в системах FreeBSD или Linux с установленным strongSwan.
Примечание. Вы также можете использовать эту конфигурацию для подключения двух систем, отличных от MikroTik. Просто скопируйте приведенную ниже конфигурацию для каждой системы, которую вы хотите подключить.
ipsec.conf
/etc/ipsec.conf:
conn <name>
authby=secret
auto=route
keyexchange=ike
left=<your local IP>
right=<remote IP of Mikrotik system>
leftikeport=500
rightikeport=500
type=transport
ike=aes256-sha1-modp1024!
esp=aes256-sha1!
dpddelay=5
dpdtimeout=20
dpdaction=clear
ipsec.secrets
/etc/ipsec.secrets:
<your local IP> <remote IP of Mikrotik system> : PSK "<Put your preshared key here>"
MikroTik Config
Следующую конфигурацию лучше всего выполнять с терминала на устройство MikroTik.
Примечание. Вы можете использовать следующую конфигурацию для подключения двух систем MikroTik. Просто скопируйте приведенную ниже конфигурацию на каждую систему, которую вы хотите подключить.
/ip ipsec policy
add src-address=0.0.0.0/0 dst-address=<remote IP of strongswan system> proposal=ike2 ipsec-protocols=esp
/ip ipsec proposal
add name="ike2" auth-algorithms=sha256,sha1 enc-algorithms=aes-256-cbc,aes-128-cbc lifetime=30m pfs-group=none
/ip ipsec peer
add name="<name of strongswan system>" address=<local IP> profile=ike2 exchange-mode=main send-initial-contact=yes
/ip ipsec identity
add peer=<remote IP of strongswan system> auth-method=pre-shared-key secret="<Put your preshared key here>" generate-policy=no
/ip ipsec profile
add name="ike2" hash-algorithm=sha1 enc-algorithm=aes-256,aes-192,aes-128,3des,des dh-group=modp2048,modp1024 lifetime=8h proposal-check=obey nat-traversal=no dpd-interval=2m dpd-maximum-failures=5