Puncte:0

Nu se poate ajunge la interfața aplicației care rulează trafic de container prin container

drapel de

Creez următoarea configurație folosind containere docker

  • Gazdă Docker: mașină fizică care rulează containerele docker
    • openvpn: container care rulează openvpn și se conectează automat la un VPN.
    • nzbget: container care rulează nzbget, interfață web accesibilă pe port <docker-host-ip>:6789

Fapte:

  • Pot accesa toate containerele folosind IP-ul gazdei docker.
  • Conexiunea openvpn stabilește cu succes o conexiune VPN.
  • The nzbget este în funcțiune.

A doua etapă a planului meu este să direcționez traficul nzbget container prin openvpn recipient. Reușesc acest lucru adăugând următoarea linie la docker-compose.yaml al containerului nzbget:

...
network_mode: "container:openvpn"`
...

După această cerere ipinfo.io îmi arată IP-ul VPN-ului. Dar după aceasta pierd accesul la interfața web nzbget prin <docker-host-ip>:6789 (conexiunea a expirat). Când eu (în scopuri de testare) nu-l las pe openvpn container stabilește o conexiune VPN și repornește ambele containere. Mă pot conecta la interfața nzbget folosind <docker-host-ip>:6789. Deci, se pare că conexiunea VPN în sine mă împiedică să mă conectez la containerul nzbget.

Acum întrebarea este: cum pot configura openvpn în așa fel încât să îmi permită să mă conectez la interfața mea web nzbget folosind <docker-host-ip>:6789.

Am observat uitându-mă la jurnalele docker al openvpn container care atunci când se stabilește conexiunea VPN se adaugă unele rute:

...
2021-11-16 19:03:38 Dispozitiv TUN/TAP tun0 deschis
2021-11-16 19:03:38 /sbin/ip link set dev tun0 up mtu 1500
2021-11-16 19:03:38 /sbin/ip link set dev tun0 up
2021-11-16 19:03:38 /sbin/ip addr add dev tun0 10.7.2.7/24
2021-11-16 19:03:38 /sbin/ip route adauga <vpn-ip-address>/32 prin 172.18.0.1
2021-11-16 19:03:38 /sbin/ip route adauga 0.0.0.0/1 prin 10.7.2.1
2021-11-16 19:03:38 /sbin/ip route adauga 128.0.0.0/1 prin 10.7.2.1
...

Cred că configurația greșită/rutele IP aflate în conflict este ceea ce îmi cauzează problemele. Așadar, iată câteva informații suplimentare.

Interfețe pe openvpn container:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state NECUNOSCUT 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 pentru totdeauna preferred_lft pentru totdeauna
2: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state NECUNOSCUT qlen 500
    link/[65534] 
    inet 10.7.2.7/24 scope global tun0
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
85: eth0@if86: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1500 qdisc noqueue state UP 
    link/ether 02:42:ac:12:00:02 brd ff:ff:ff:ff:ff:ff
    inet 172.18.0.2/16 brd 172.18.255.255 scope global eth0
       valid_lft pentru totdeauna preferred_lft pentru totdeauna

Lista rutelor IP când vpn este activ openvpn container:

root@cf64c3dd2846:/# lista de rute IP
0.0.0.0/1 prin 10.7.2.1 dev tun0 
implicit prin 172.18.0.1 dev eth0 
10.7.2.0/24 dev tun0 scope link src 10.7.2.7 
<vpn-ip-address> prin 172.18.0.1 dev eth0 
128.0.0.0/1 prin 10.7.2.1 dev tun0 
172.18.0.0/16 dev eth0 scope link src 172.18.0.2 

Lista rutelor IP când vpn este nu activ pe openvpn container (în această situație pot accesa interfața web nzbget):

implicit prin 172.18.0.1 dev eth0 
172.18.0.0/16 dev eth0 proto kernel scope link src 172.18.0.2

Știe cineva despre o regulă de rută IP pe care să o pot aplica pentru a permite accesul la interfața web nzbget? În timp ce aveți o conexiune VPN activă? De exemplu, există o modalitate de a permite (numai) traficului de intrare pe portul 6789 să fie direcționat „normal” (nu prin VPN)

Multumesc pentru ajutor!

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.