VPNインターフェイスを介してDockerブリッジインターフェイスのトラフィックをルーティングする方法

VPNインターフェイスを介してDockerブリッジインターフェイスのトラフィックをルーティングする方法

nordlynxVPNインターフェイス、プライマリインターフェイス、およびens5ドッカーブリッジインターフェイスがありますbr-83e694bd09ad。現在、このnordlynxインターフェイスにはそれを介してルーティングされるトラフィックはありませんが、curl --interface nordlynx https://ifconfig.ioVPNネットワークを介して要求を送信することができ(VPNサーバーのIPアドレスを再送信)、単に直接要求を送信curl https://ifconfig.ioできます(サーバーの実際のIPアドレスを表示ens5)。

私が達成する必要があるのはnordlynx基本ですens5。ただし、サーバー上の残りの「一般」トラフィックは通常ens5どおり、そのインターフェイスを引き続き使用し、Dockerトラフィックのみをルーティングする必要があります。 SSHなど、サーバーの公開ポートに引き続きアクセスできる人が必要です。実際のIPを使用して他のデバイスと通信します(たとえば、VPN経由ではありません)。

私の研究によれば、docker自体にはこれを達成するための単純な設定オプションがないようです。しかし、ここにそのような経験がたくさんあるかどうかはわかりませんし、この設定を実装する方法に関するガイドも見つかりません。

これが現在の出力ですip addr show

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: ens5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP group default qlen 1000
    link/ether 06:1b:b3:94:71:50 brd ff:ff:ff:ff:ff:ff
    altname enp0s5
    altname eni-03a0757ebcb70f7cd
    altname device-number-0
    inet 172.31.34.89/20 metric 512 brd 172.31.47.255 scope global dynamic ens5
       valid_lft 2072sec preferred_lft 2072sec
4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
    link/ether 02:42:eb:b8:73:77 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever
42: br-0c64a34b621d: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
    link/ether 02:42:a4:56:d1:4e brd ff:ff:ff:ff:ff:ff
    inet 172.19.0.1/16 brd 172.19.255.255 scope global br-0c64a34b621d
       valid_lft forever preferred_lft forever
45: br-83e694bd09ad: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
    link/ether 02:42:48:a7:8b:ba brd ff:ff:ff:ff:ff:ff
    inet 10.6.0.1/16 brd 10.6.255.255 scope global br-83e694bd09ad
       valid_lft forever preferred_lft forever
54: nordlynx: <POINTOPOINT,UP,LOWER_UP> mtu 8921 qdisc noqueue state UNKNOWN group default qlen 1000
    link/none
    inet 10.5.0.2/32 scope global nordlynx
       valid_lft forever preferred_lft forever

ip route show出力は次のとおりです。

default via 172.31.32.1 dev ens5 proto dhcp src 172.31.34.89 metric 512
10.6.0.0/16 dev br-83e694bd09ad proto kernel scope link src 10.6.0.1 linkdown
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.19.0.0/16 dev br-0c64a34b621d proto kernel scope link src 172.19.0.1 linkdown
172.31.0.2 via 172.31.32.1 dev ens5 proto dhcp src 172.31.34.89 metric 512
172.31.32.0/20 dev ens5 proto kernel scope link src 172.31.34.89 metric 512
172.31.32.1 dev ens5 proto dhcp scope link src 172.31.34.89 metric 512

出力ip -details link show dev nordlynx

55: nordlynx: <POINTOPOINT,UP,LOWER_UP> mtu 8921 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/none  promiscuity 0 minmtu 0 maxmtu 2147483552
    wireguard addrgenmode none numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535

出力ip rule

0:  from all lookup local
32766:  from all lookup main
32767:  from all lookup default

出力ip route show table local

local 10.5.0.2 dev nordlynx proto kernel scope host src 10.5.0.2
local 10.6.0.1 dev br-83e694bd09ad proto kernel scope host src 10.6.0.1
broadcast 10.6.255.255 dev br-83e694bd09ad proto kernel scope link src 10.6.0.1 linkdown
local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo proto kernel scope link src 127.0.0.1
local 172.17.0.1 dev docker0 proto kernel scope host src 172.17.0.1
broadcast 172.17.255.255 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
local 172.19.0.1 dev br-0c64a34b621d proto kernel scope host src 172.19.0.1
broadcast 172.19.255.255 dev br-0c64a34b621d proto kernel scope link src 172.19.0.1 linkdown
local 172.31.34.89 dev ens5 proto kernel scope host src 172.31.34.89
broadcast 172.31.47.255 dev ens5 proto kernel scope link src 172.31.34.89

出力ip route show table main

default via 172.31.32.1 dev ens5 proto dhcp src 172.31.34.89 metric 512
10.6.0.0/16 dev br-83e694bd09ad proto kernel scope link src 10.6.0.1 linkdown
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.19.0.0/16 dev br-0c64a34b621d proto kernel scope link src 172.19.0.1 linkdown
172.31.0.2 via 172.31.32.1 dev ens5 proto dhcp src 172.31.34.89 metric 512
172.31.32.0/20 dev ens5 proto kernel scope link src 172.31.34.89 metric 512
172.31.32.1 dev ens5 proto dhcp scope link src 172.31.34.89 metric 512

出力ip route show table default

Error: ipv4: FIB table does not exist.
Dump terminated

ベストアンサー1

おすすめ記事