eth0 を tun0(OpenVPN) にルーティングし、wlan0 を影響を受けないままにします。

eth0 を tun0(OpenVPN) にルーティングし、wlan0 を影響を受けないままにします。

私は現在Raspberry Pi Model B + v1.2を使用しています(この問題が解決したらRaspberry Pi 4を購入する予定です)。私のネットワークインターフェースeth0はイーサネットケーブルを介して私のルーターに接続し、私のwlan0はWi-Fiを介して同じルーターに接続します。

このRaspberry Piをシードボックスとして使用する予定です。 qBittorrent-noxのすべてのトラフィックがOpenVPNを通過するeth0インターフェイスを通過させ、wlan0インターフェイスをVPNの影響を受けないようにしてqBittorrentにアクセスできるようにしたいと思います。 -nox私のパブリックポートを使用して、私のパブリックIPアドレスでWebUIを使用します。 (注:私のVPNはポート転送を許可しません)

私はIPテーブルルーティングに関する多くの記事を見ましたが、あなたが望むものを達成する方法をよく理解していません。

"ip Route show"コマンドを実行しましたが、結果は次のとおりです。

0.0.0.0/1 via 10.28.10.5 dev tun0
default via 192.168.1.1 dev eth0 proto dhcp src 192.168.1.26 metric 202
default via 192.168.1.1 dev wlan0 proto dhcp src 192.168.1.27 metric 303
10.28.10.1 via 10.28.10.5 dev tun0
10.28.10.5 dev tun0 proto kernel scope link src 10.28.10.6
103.231.91.74 via 192.168.1.1 dev eth0
128.0.0.0/1 via 10.28.10.5 dev tun0
192.168.1.0/24 dev eth0 proto dhcp scope link src 192.168.1.26 metric 202
192.168.1.0/24 dev wlan0 proto dhcp scope link src 192.168.1.27 metric 303

"ifconfig"コマンドの結果は次のとおりです。

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.26  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::f96:bfff:cd6d:d1d6  prefixlen 64  scopeid 0x20<link>
        inet6 2404:4408:23f4:5500:c127:7182:abfb:5e26  prefixlen 64  scopeid 0x0<global>
        ether b8:27:eb:61:19:70  txqueuelen 1000  (Ethernet)
        RX packets 911757  bytes 1126311222 (1.0 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 449193  bytes 64017695 (61.0 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 123  bytes 12608 (12.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 123  bytes 12608 (12.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tun0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
        inet 10.28.10.6  netmask 255.255.255.255  destination 10.28.10.5
        inet6 fe80::c6ba:27ae:2226:dfa2  prefixlen 64  scopeid 0x20<link>
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 100  (UNSPEC)
        RX packets 467058  bytes 552751583 (527.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 253762  bytes 16534884 (15.7 MiB)
        TX errors 0  dropped 102112 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.27  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::65b8:5d35:c9e6:b85f  prefixlen 64  scopeid 0x20<link>
        inet6 2404:4408:23f4:5500:cfd3:d82:7d0b:93ce  prefixlen 64  scopeid 0x0<global>
        ether 00:c0:ca:84:7d:51  txqueuelen 1000  (Ethernet)
        RX packets 22208  bytes 23412831 (22.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 364  bytes 43145 (42.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

助けてくれてありがとう。よろしくお願いします!

答え1

さまざまなプログラム(qBittorrent-boxとは異なるプログラム)に異なるパスが必要です。

最も簡単な方法は、ネットワークネームスペースを作成し(これを行う方法を説明する多くの質問がサイトにあります)、他のものがeth0必要ない場合はそのネームスペースに移動するか、eth0メインネットワークに接続してvethを介してネットワークにアクセスします。することです。 -pair 名前空間を指定し、ポリシー ルーティング (google) を使用して veth-pair-end から着信するすべてのエントリをeth0.

ルーティングには使用しないでくださいiptables。これは私のマイナーな迷惑です。ルーティングにはルーティングテーブルを使用します。これが彼らの目的です。

関連情報