Puncte:2

Serviciul Docker inaccesibil pe IP-ul gazdă, dar funcționează pe gazdă locală

drapel cn

Am o problemă similară cu această postare aici, deși nu cred că intervalele mele IP se ciocnesc: https://forums.docker.com/t/service-is-unreachable-on-host-ip-localhost-works/78515

Expun un server web prin docker pe portul 443 și îl pot accesa prin 127.0.0.1:443 cât şi din afara gazdei. Nu pot accesa acel server web prin IP-ul gazdei și îmi smulg de ce ar putea fi acest lucru.

Pentru a face lucrurile reproductibile, permiteți-mi să declanșez un container netcat (care ascultă pe toate interfețele din interiorul containerului) - Am aceeași problemă pe portul 443, evident:

$ docker run -ti --rm -p 8182:8182 chilcano/netcat:jessie -vvl -p 8182
->>>>>> (Se execută '/bin/netcat -vvl -p 8182') <<<<<<-
ascult pe [oricare] 8182...

Docker ascultă pe toate interfețele locale pe 8182 â

$ lsof -i :8182
COMANDA PID UTILIZATOR TIP FD DIMENSIUNEA DISPOZITIV/OPRIT NUMELE NODULUI
docker-pr 11152 root 4u IPv4 1183427772 0t0 TCP *:8182 (ASCULTATE)

Conectarea la netcat în docker de la gazdă funcționează când se utilizează localhost â

$ nc -vz 127.0.0.1 8182
localhost [127.0.0.1] 8182 deschis

problema începe când folosind IP-ul gazdei locale și încercând să ajungă la containerul docker așa â

$ nc -vz 192.168.176.111 8182
ramirez.domain.local [192.168.176.111] 8182: Rețeaua este inaccesibilă

Pot să dau ping la gazdă foarte bine și să accesez alte lucruri care rulează pe gazdă prin IP-ul său (de exemplu, rulează netcat -vvl -p 8182 direct pe gazdă în loc de containerul docker, totul funcționează).

Când apelați același IP de pe alt dispozitiv din rețea, totul funcționează â , deci aceasta este o problemă locală a gazdei docker

$ nc -vz 192.168.176.111 8182
Conexiunea la portul 192.168.176.111 8182 [tcp/*] a reușit!

Tabelul de rutare, precum și iptables mi se par bine, dar nu sunt un expert.

$ ip a
# adresa mac anonimizată
6: ovs_eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue stare UP grup implicit qlen 1
    link/eter xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet 192.168.176.111/24 brd 192.168.176.255 scope global ovs_eth0
       valid_lft pentru totdeauna preferred_lft pentru totdeauna

traseu:

$ traseu ip
implicit prin 192.168.176.1 dev ovs_eth0 src 192.168.176.111
169.254.0.0/16 dev ovs_eth1 proto kernel scope link src 169.254.106.154 linkdown mort
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
192.168.127.0/24 dev docker-976f9fbf proto kernel scope link src 192.168.127.1
192.168.128.0/24 dev docker-bd2edfee proto kernel scope link src 192.168.128.1
192.168.176.0/24 dev ovs_eth0 proto kernel scope link src 192.168.176.111
192.168.254.0/24 dev docker-2de11f77 proto kernel scope link src 192.168.254.1

iptables:

$ iptables -L -v -n
INTRARE în lanț (politica ACCEPTĂ 78080 pachete, 24M de octeți)
 pkts bytes target prot opt ​​in out source destination
 210M 299G DOS_PROTECT toate -- * * 0.0.0.0/0 0.0.0.0/0

Lanț FORWARD (politica ACCEPT 0 pachete, 0 octeți)
 pkts bytes target prot opt ​​in out source destination
 218M 241G DEFAULT_FORWARD toate -- * * 0.0.0.0/0 0.0.0.0/0

IEȘIRE în lanț (politica ACCEPTĂ 76525 pachete, 24M de octeți)
 pkts bytes target prot opt ​​in out source destination

Lanț DEFAULT_FORWARD (1 referințe)
 pkts bytes target prot opt ​​in out source destination
 230K 276M DOCKER-USER toate -- * * 0.0.0.0/0 0.0.0.0/0
 231K 276M DOCKER-ISOLATION-STAGE-1 toate -- * * 0.0.0.0/0 0.0.0.0/0
    0 0 ACCEPT toate -- * docker-8cfed06e 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,STABLISHED
    0 0 DOCKER toate -- * docker-8cfed06e 0.0.0.0/0 0.0.0.0/0
    0 0 ACCEPT toate -- docker-8cfed06e !docker-8cfed06e 0.0.0.0/0 0.0.0.0/0
    0 0 ACCEPT toate -- docker-8cfed06e docker-8cfed06e 0.0.0.0/0 0.0.0.0/0
7254K 23G ACCEPT toate -- * docker-f06ef418 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,STABLISHED
19005 1140K DOCKER toate -- * docker-f06ef418 0.0.0.0/0 0.0.0.0/0
4614K 1362M ACCEPT pe toate -- docker-f06ef418 !docker-f06ef418 0.0.0.0/0 0.0.0.0/0
19005 1140K ACCEPT pe toate -- docker-f06ef418 docker-f06ef418 0.0.0.0/0 0.0.0.0/0
2270K 2424M ACCEPT toate -- * docker-f95cea99 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,STABLISHED
1549K 101M DOCKER toate -- * docker-f95cea99 0.0.0.0/0 0.0.0.0/0
1814K 1273M ACCEPT toate -- docker-f95cea99 !docker-f95cea99 0.0.0.0/0 0.0.0.0/0
1549K 101M ACCEPT toate -- docker-f95cea99 docker-f95cea99 0.0.0.0/0 0.0.0.0/0
  14M 8442M ACCEPT pe toate -- * docker-45bb17c5 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,STABLISHED
14118 846K DOCKER toate -- * docker-45bb17c5 0.0.0.0/0 0.0.0.0/0
 7237 714K ACCEPTĂ toate -- docker-45bb17c5 !docker-45bb17c5 0.0.0.0/0 0.0.0.0/0
14118 846K ACCEPT toate -- docker-45bb17c5 docker-45bb17c5 0.0.0.0/0 0.0.0.0/0
 5238 23M ACCEPT toate -- * docker0 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,STABLISHED
    0 0 DOCKER toate -- * docker0 0.0.0.0/0 0.0.0.0/0
 3332 216K ACCEPT toate -- docker0 !docker0 0.0.0.0/0 0.0.0.0/0
    0 0 ACCEPT toate -- docker0 docker0 0.0.0.0/0 0.0.0.0/0

Lanț DOCKER (5 referințe)
 pkts bytes target prot opt ​​in out source destination
    0 0 ACCEPT tcp -- !docker-45bb17c5 docker-45bb17c5 0.0.0.0/0 192.168.254.254 tcp dpt:2375
    0 0 ACCEPT tcp -- !docker-f95cea99 docker-f95cea99 0.0.0.0/0 192.168.127.127 tcp dpt:8888
    0 0 ACCEPT tcp -- !docker-f95cea99 docker-f95cea99 0.0.0.0/0 192.168.127.168 tcp dpt:8080
    0 0 ACCEPT tcp -- !docker-f95cea99 docker-f95cea99 0.0.0.0/0 192.168.127.168 tcp dpt:443
    0 0 ACCEPT tcp -- !docker-f95cea99 docker-f95cea99 0.0.0.0/0 192.168.127.168 tcp dpt:80
    0 0 ACCEPT tcp -- !docker0 docker0 0.0.0.0/0 172.17.0.2 tcp dpt:8182

Lanț DOCKER-ISOLATION-STAGE-1 (1 referințe)
 pkts bytes target prot opt ​​in out source destination
    0 0 DOCKER-ISOLATION-STAGE-2 toate -- docker-8cfed06e !docker-8cfed06e 0.0.0.0/0 0.0.0.0/0
4614K 1362M DOCKER-ISOLATION-STAGE-2 toate -- docker-f06ef418 !docker-f06ef418 0.0.0.0/0 0.0.0.0/0
1814K 1273M DOCKER-ISOLATION-STAGE-2 toate -- docker-f95cea99 !docker-f95cea99 0.0.0.0/0 0.0.0.0/0
 7237 714K DOCKER-ISOLATION-STAGE-2 toate -- docker-45bb17c5 !docker-45bb17c5 0.0.0.0/0 0.0.0.0/0
 3332 216K DOCKER-ISOLATION-STAGE-2 toate -- docker0 !docker0 0.0.0.0/0 0.0.0.0/0
 211M 239G RETURN all -- * * 0.0.0.0/0 0.0.0.0/0

Lanț DOCKER-ISOLATION-STAGE-2 (5 referințe)
 pkts bytes target prot opt ​​in out source destination
    0 0 DROP all -- * docker-8cfed06e 0.0.0.0/0 0.0.0.0/0
    0 0 DROP all -- * docker-f06ef418 0.0.0.0/0 0.0.0.0/0
    0 0 DROP all -- * docker-f95cea99 0.0.0.0/0 0.0.0.0/0
    0 0 DROP all -- * docker-45bb17c5 0.0.0.0/0 0.0.0.0/0
98306 8258K DROP all -- * docker0 0.0.0.0/0 0.0.0.0/0
  38M 19G RETURN all -- * * 0.0.0.0/0 0.0.0.0/0

Lanț DOCKER-USER (1 referințe)
 pkts bytes target prot opt ​​in out source destination
 211M 239G RETURN all -- * * 0.0.0.0/0 0.0.0.0/0

Lanț DOS_PROTECT (1 referințe)
 pkts bytes target prot opt ​​in out source destination
   13 876 RETURN icmp -- ovs_eth0 * 0.0.0.0/0 0.0.0.0/0 icmptype 8 limit: avg 1000/sec burst 5
    0 0 DROP icmp -- ovs_eth0 * 0.0.0.0/0 0.0.0.0/0 icmptype 8
 270K 11M RETURN tcp -- ovs_eth0 * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x04 limit: medie 1/sec burst 5
16881 675K DROP tcp -- ovs_eth0 * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x04
 347K 20M RETURN tcp -- ovs_eth0 * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x02 limit: avg 10000/sec burst 100
    0 0 DROP tcp -- ovs_eth0 * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x02
drapel jp
arată `iptables -L -v -n`
drapel cn
Am actualizat cu `iptables -L -v -n`
drapel vn
Sunteți într-o rețea „acasă”? Dacă atât de multe routere de acasă nu permit accesarea propriei IP externe. Consultați https://superuser.com/q/1047745/2013 Încercați să utilizați un proxy web precum https://hidester.com/proxy/
drapel cn
IP-ul pe care încerc să îl accesez este IP-ul intern, nu IP-ul extern - adică este doar IP-ul pe care routerul îl atribuie gazdei mele docker (în acest caz, este static). Când utilizați IP-ul WAN extern, totul funcționează.

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.