1 (edytowany przez g0f3r 2015-10-15 19:58:08)

Temat: VPN - puszczenie ruchu przez konkretny wan.

Witam,

Na wstępie - zapoznałem się z http://eko.one.pl/?p=openwrt-routing smile
Sytuacja jest taka:
WAN - jakiś tam ISP
WAN2 - LTE
LAN: 192.168.1.0/24
2x klient vpn na routerze 10.8.0.5,10.8.8.5
Jak najprościej wymusić aby ruch z maszyny z lanu np 192.168.1.2 leciał wyłącznie VPN'em po WAN2 na porty powiedzmy 80 i 443. a reszta ruchu z tego hosta defaultowo WAN. Teoretycznie wystarczyłoby mi zbindowanie klienta VPN na interfejsie 3g-wan2, ale nie widzę takiej opcji - na IP się da (tutaj można sobie skryptem ogarnąć). Ale może jest bardziej sensowne wyjście, routing czy coś smile
Próbowałem tak:

ip rule add from 10.8.8.5 table modem  <- koncówka vpna na routerze
ip rule add from 10.8.0.5 table modem  <- druga koncówka vpna na routerze
ip route add default via 10.64.64.64 dev 3g-wan2 table modem
ip rule add fwmark 0x30 table modem
ip route flush cache
iptables -t mangle -I PREROUTING -p udp --dport 1194 -j MARK --set-mark 0x30
iptables -t mangle -I PREROUTING -p tcp -s 192.168.1.2 --dport 80 -j MARK --set-mark 0x30
iptables -t mangle -I PREROUTING -p tcp -s 192.168.1.2 --dport 443 -j MARK --set-mark 0x30

Ale ruch śmiga nadal przez wan, a nie wan2 - coś z routingiem?

2

Odp: VPN - puszczenie ruchu przez konkretny wan.

A ustawiłeś jakoś specjalnie żeby vpn leciał przez wan a nie tam gdzie jest gateway?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: VPN - puszczenie ruchu przez konkretny wan.

jest proste rozwiązanie.
odpalasz mwan3 i tam ustawiasz sobie zależności np z jakiego ip (lub portu) któredy ma być kierowany ruch.

4 (edytowany przez g0f3r 2015-10-16 01:35:28)

Odp: VPN - puszczenie ruchu przez konkretny wan.

Cezary napisał/a:

A ustawiłeś jakoś specjalnie żeby vpn leciał przez wan a nie tam gdzie jest gateway?

Sądziłem,  że fwmark + prerouting ze 192.168.1.0/24 z dest na 80/443 10.8.0.5/10.8.8.5 skierowany dalej na drugi koniec tunelu załatwi problemik - ale popatrzę na spokojnie.

5

Odp: VPN - puszczenie ruchu przez konkretny wan.

1wheler1 napisał/a:

jest proste rozwiązanie.
odpalasz mwan3 i tam ustawiasz sobie zależności np z jakiego ip (lub portu) któredy ma być kierowany ruch.

Używałem dotąd tylko w trybie failovera - przyjrzę się.

6

Odp: VPN - puszczenie ruchu przez konkretny wan.

tu masz że all leci po wan2 a w przypadku zaniku wan2 przełącza na wan, a jak nie chcesz aby przełączał to w policy dajesz tylko wan2
możesz sobie dowolnie pisać reguły, tylko w jednym config rule można zawrzeć tylko jedną regułę

config rule 'rule1'
        option src_ip '0.0.0.0'
        option dest_port '443'
        option proto 'tcp'
        option use_policy 'wan2_wan'

7 (edytowany przez g0f3r 2015-10-16 13:55:54)

Odp: VPN - puszczenie ruchu przez konkretny wan.

Dzięki, to jest ok z tym że wtedy ruch wyjdzie czystym wan2 a mnie zależy żeby szedł vpn'em. Mam w tej chwili tak:
[LAN] 192.168.1.2 -> 10.8.0.5:443 [koncowka vpn na routerze] -> 10.8.0.1:443 [koncowka vpn na serwerze]
Całą robotę robi:
iptables -t nat -I PREROUTING -d 10.8.8.5/32 -p tcp -m tcp --dport 443 -j DNAT --to-destination 10.8.8.1:443
Teraz się zastanawiam jak zamknąć vpn'a w wan2, tak by tylko wan2 mogło zestawić połączenie.
Cały ruch (poza 443 - ten puszczamy vpnem po wan2) ze 192.168.1.2 szedł przez wan. Trochę zakręciłem, ale mam nadzieję że ktoś zrozumie smile

EDIT:
Działa i na mwan3, tyle że source ip podajemy 0.0.0.0/0 zamiast 0.0.0.0 no i oczywiście udp 1194 dla openvpn. Ale co prawda to prawda, bez takich zabaw przydała by się opcja bindowania openvpn na interfejs.

8

Odp: VPN - puszczenie ruchu przez konkretny wan.

zrób to na cc