Mam wiele połączeń VPN, które używają tego samego adresu IP bramy (nie mam możliwości zmiany tego, ponieważ jest poza moją kontrolą). Wszystkie te sieci VPN zapewniają dostęp do różnych sieci, a sieci mają co najmniej jeden lub dwa przeskoki w górę, więc we wszystkich przypadkach wymagany jest adres IP bramy. W systemie Linux, aby kierować do sieci, mogę po prostu zrobić:
ip route add $destination_1 via $gateway_ip dev $interface_1
ip route add $destination_2 via $gateway_ip dev $interface_2
ip route add $destination_3 via $gateway_ip dev $interface_3
itp.
Linux umieści następnie ruch dla każdej sieci docelowej na właściwych interfejsach, kierując się do właściwej bramy, więc nie ma znaczenia, że adres IP bramy jest taki sam dla każdego interfejsu.
Moje pytanie brzmi: jak mogę to osiągnąć w OpenBSD? Próbowałem i nie udało mi się. Moje ustalenia są takie, że dla konkretnego miejsca docelowego mogę:
- określić interfejs (jeśli miejsce docelowe jest osiągalne bezpośrednio na tym łączu - czego w moim przypadku nie ma)
- określ adres IP bramy, ponieważ miejsce docelowe nie znajduje się bezpośrednio na łączu
Ale nie mogę wymyślić, jak określić oba.
-T
opcji route
i zdefiniowanie tabeli routingu dla każdego miejsca docelowego? Myślę, że zapewnia lepszą „izolację” dla reguł poszczególnych interfejsów.