Linux ルーティング テーブルを設定して F5 VPN とインターネット トラフィックをルーティングする

Linux ルーティング テーブルを設定して F5 VPN とインターネット トラフィックをルーティングする

VPN クライアントがどのように動作するのか、また、希望どおりにルーティング テーブルを設定するにはどうすればよいのかがわかりません。

これはVPNに接続する前の出力です

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.3.0     *               255.255.255.0   U     303    0        0 wlan0

VPNに接続した後

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         XXX.XXX.XXX.XXX  128.0.0.0       UG    1      0        0 ppp0
default         192.168.3.1     0.0.0.0         UG    303    0        0 wlan0
1.1.1.1         *               255.255.255.255 UH    0      0        0 ppp0
vpn.domain.tld  192.168.3.1     255.255.255.255 UGH   1      0        0 wlan0
128.0.0.0       XXX.XXX.XXX.XXX  128.0.0.0       UG    1      0        0 ppp0
192.168.3.1     192.168.3.121   255.255.255.255 UGH   1      0        0 wlan0

ifconfigレポート

ppp0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1379  metric 1
    inet XXX.XXX.XXX.XXX  netmask 255.255.255.255  destination 1.1.1.1
    ppp  txqueuelen 100  (Point-to-Point Protocol)
    RX packets 25  bytes 14115 (13.7 KiB)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 51  bytes 7076 (6.9 KiB)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500  metric 1
    inet 192.168.3.121  netmask 255.255.255.0  broadcast 192.168.3.255
    inet6 fe80::ca3a:35ff:fec1:9095  prefixlen 64  scopeid 0x20<link>
    ether c8:3a:35:c1:90:95  txqueuelen 1000  (Ethernet)
    RX packets 499060  bytes 549032226 (523.5 MiB)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 385300  bytes 77733269 (74.1 MiB)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

XXX.XXX.XXX.XXX (クラス B IP) に送信されるトラフィックのみを VPN に送信したいと思います。その他のすべてのトラフィックは、当然 wlan0 に送信されます。

重複していたら申し訳ありません。アドバイスをいただければ助かります。

注: XXX.XXX.XXX.XXX の値は、記載されている各インスタンスで同じです。

答え1

ここで素敵な小さなチュートリアルを見つけました:

http://www.gentoo.org/doc/en/vpnc-howto.xml#doc_chap7

私もあなたと同じ問題を抱えていました。デフォルト ルートが 2 つありました。残念ながら、デフォルト ルートを変更するとすぐに終了する Juniper VPN を使用しています。

しかし、私の理解では、次のコマンドでデフォルトの VPN ルートを削除できます。

 sudo route del default gw XXX.XXX.XXX.XXX

次に、次のように特定のサブネット ルーティングを追加できます。

sudo route add -net XXX.XXX.XXX.XXX netmask 255.255.255.0 dev tun0

目的のネットワークに合わせてネットマスクを調整する必要があるかもしれません。「tun0」は VPN のデバイスです。ifconfig を使用して、VPN が追加したデバイスを確認できます。

参考までに、この技術はスプリット トンネリングと呼ばれると思います。私の理解では、VPN 管理者はスプリット トンネリングを許可または禁止できます。Juniper VPN はこの決定を強制するのにうまく機能しているようですが、それを上書きする方法はわかりません。

関連情報