Kan niet bij extern ip vanuit intern netwerk

  • 21 juli 2014
  • 15 reacties
  • 2275 keer bekeken

Ik gebruik port forwarding om bepaalde services van lokale machines extern te benaderen. Bijvoorbeeld een simpele http server. Ik heb een domeinnaam gekoppeld aan mijn eigen ip, laten we zeggen example.com.

Als ik deze services benader vanaf een extern netwerk, bijvoorbeeld mijn 3g verbinding, gaat dit prima.

Als ik deze services extern benader vanuit mijn eigen thuisnetwerk, kan ik er niet bij.

Als ik vanuit thuis mijn externe ip ping, krijg ik de volgende output:

PING example.com (***.***.***.***) 56(84) bytes of data.
64 bytes from ip####.adsl-surfen.hetnet.nl (***.***.***.***): icmp_seq=1 ttl=63 time=3.05 ms
64 bytes from ip####.adsl-surfen.hetnet.nl (***.***.***.***): icmp_seq=2 ttl=63 time=5.17 ms
64 bytes from ip####.adsl-surfen.hetnet.nl (***.***.***.***): icmp_seq=3 ttl=63 time=3.02 ms
64 bytes from ip####.adsl-surfen.hetnet.nl (***.***.***.***): icmp_seq=4 ttl=63 time=3.07 ms
64 bytes from ip####.adsl-surfen.hetnet.nl (***.***.***.***): icmp_seq=5 ttl=63 time=3.03 ms
64 bytes from ip####.adsl-surfen.hetnet.nl (***.***.***.***): icmp_seq=6 ttl=63 time=17.6 ms

--- example.com ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5006ms
rtt min/avg/max/mdev = 3.023/5.834/17.650/5.341 msHierbij heb ik mijn eigen externe ip vervangen door ***.***.***.***.

Is het mogelijk om wel vanuit mijn interne netwerk bij mijn externe ip te komen?


15 reacties

Reputatie 7
Badge +27
Dag Remco,

Welke Experiabox gebruik je? De techniek die dit mogelijk maakt heet NAT Loopback. De ZTE H220n heeft dit in ieder geval, de Arcadyan modems niet. Ik vermoed dat de H368n (V9) dit ook ondersteunt, maar ik kan het niet met zekerheid bevestigen.

Indien je een Arcadyan modem gebruikt is het mogelijk een regel toe te voegen aan het hostsbestand om deze functionaliteit te simuleren. Klopt het dat je Linux gebruikt? Dan kun je /etc/hosts aanpassen en hier deze regel toevoegen:

127.0.0.1   example.com

Een herstart kan nodig zijn. Voor Windows kun je het middels deze stappen aanpassen.

Ik hoop dat je hiermee geholpen bent.

Met vriendelijke groet,

Joran

Reputatie 7
Ik kan bevestigen dat dit bij een ZTE H368N (V9) ook gewoon werkt.

Het is overigens wel heel raar dat er vandaag de dag nog routers uitgeleverd worden die dit niet zouden ondersteunen (V8?).

Wat je dan namelijk tegen jouw klanten zegt, die (anno 2014) allemaal hun mobieltjes en tablets hebben, is dat ze de configuratie telkens maar moeten aanpassen om bijvoorbeeld de eigen NAS (cloud), security camera's etc. te benaderen. (Buiten de deur via het publieke adres en thuis via het LAN adres.)
@Joran,

Doe me een plezier, als het zo is dat de V8 geen NAT loopback ondersteunt, zorg er dan voor dat er een firmware update komt waardoor deze dat wel gaat ondersteunen!   

Reputatie 7
Badge +27
Ik kan in ieder geval beloven dat ik het verzoek doorzet. Dit is inderdaad een zeer praktische feature. Het is verder ook handig dat alle modems dezelfde features ondersteunen om problemen te voorkomen bij een vervangend model.

Beste Joran,

Bedankt voor je reactie.

Ik heb inderdaad een Arcadyan modem. Jammer om te horen dat dit niet kan.

Ik ben bekend met /etc/hosts, maar dat zal in dit geval niet helpen. Het gaat er vooral om dat ik met mijn laptop en Android device remote bij mijn pc thuis kan.

Als er echt geen betere oplossing is, kan ik wellicht een scriptje schrijven voor Network Manager dat de hosts file automatisch aanpast, maar dit is erg omslachtig en werkt niet voor mijn Android en eventuele andere devices.

Weet je toevallig of het mogelijk is om de modem om te ruilen tegen een model die dit wel support?

Groetjes,

Remco

Reputatie 7
Volgens mij zou de NAT loopback ook op een V8 moeten werken.

Je geeft aan dat je response krijgt op een ping naar jouw publieke iP adres (example com). De V8 zou hier echter zelf geen reply op mogen geven.

Dit zou alleen maar mogen als je een apparaat (tweede router of PC) als DMZ Host ingesteld hebt op de V8 die wel antwoordt op ping requests.

Klopt het dat je op de V8 een tweede router of PC als DMZ Host gedefinieerd hebt?

Kan je overigens jouw web server wel benaderen op zijn eigen IP adres (192.168.2.?)?

Zo nee, heb je de firewall van jouw PC bekeken?

Voor welke netwerken is inkomend http toegestaan? (Private, Domain, Public)

Ik heb sinds enkele dagen een tweede router ertussen gehangen op ip 192.168.2.200.

Alle poorten in de KPN router zijn forwarded naar deze router.

Via 192.168.2.200 kan ik mijn pc die achter deze router staat gewoon bereiken.

Mijn pc draait Linux en heeft geen firewall / antivirus of iets anders dat services blokkeert.

Ik heb ooit de DMZ aangezet, omdat de klantenservice hiermee kwam. Het hielp echter niet (zoals ik zelf ook al verwacht had). Ik heb deze nu weer uitgezet, maar het maakt geen verschil.

Opmerkelijk is trouwens dat als ik de modem reboot, het wel werkt voor een korte tijd (een dag ofzo).

Reputatie 7
Ik neem aan dat jouw linux PC aangesloten is op de tweede router.

Draait jouw tweede router in router mode of bridge mode?

Je zegt dat je alle poorten forward naar jouw tweede router.

Toch moet je jouw tweede router als DMZ Host instellen en de port-forwardings verwijderen.

Port-forwarding is alleen TCP en UDP, terwijl er zoveel meer protocollen zijn die nu dus niet op jouw tweede router aankomen.

Zie: Gebruik een eigen router achter de Experia Box.

Aangezien je een reply krijgt op jouw ping (vanaf een PC op het LAN) kunnen we er vanuit gaan dat NAT loopback dus ook op een V8 gewoon werkt en dat er dus iets anders fout moet gaan.

Na de dmz te hebben ingesteld en port forwards in de kpn router uit te hebben gezet werkte het nog niet.

Nadat ik de router had gereset, werkte alles. In ieder geval bedankt hiervoor. Dit is beter dan port forwarding.

Ik heb bewust een dag gewacht met antwoorden op dit forum, want zoals ik al vermoedde...

na een dag werkte het niet meer.

Het originele probleem bestaat dus nog steeds.

Ook heb ik zojuist uitgevonden dat mensen mij niet kunnen pingen vanaf een ander netwerk. Het is dus vreemd dat ik zelf wel kan pingen.

Ik vermoedt dat het probleem dan toch echt de NAT loopback is.

Reputatie 7
Omdat je zelf wel kunt pingen (ik neem aan op jouw publieke IP adres) heeft het dus juist niet met NAT loopback te maken. Loopback is terug lussen en is alleen voor sessies geïnitieerd op jouw eigen netwerk die (via het publieke IP adres) terug gelust moeten worden naar het eigen netwerk.

Nee hier lijkt DHCP een rol te spelen, met name omdat je zegt dat het probleem pas na 24 uur gaat spelen. (Precies de standaard DHCP leasetijd op vele routers.)

Heb jij op de Experia Box een DHCP binding gemaakt voor het MAC adres van de WAN poort van jouw tweede router en is het bijbehorende IP adres als DMZ Host ingesteld?
Heb jij op jouw tweede router een DHCP binding gemaakt voor jouw Linux PC?
Ja, ik heb precies de configuratie die je nu noemt met daarbij dat mijn pc ook een vast ip heeft.

Met deze configuratie kan ik vanuit een extern netwerk bij de webserver, zoals de bedoeling is, maar niet pingen.

Ik kan niet vanuit mijn interne netwerk bij de webserver via het externe ip adres, maar ik kan dit ip adres wel pingen.

Ik kan wel via het externe ip adres van mijn tweede router, dus 192.168.2.***, zowel bij de webserver als pingen.

Reputatie 7
Kan je eens een screenshot posten van:

1) De DHCP cliënts op de V8 waarop de eigen router zichtbaar is.

2) De DHCP bindings op de V8 waarop de eigen router zichtbaar is.

3) De DMZ Host definitie op de V8.

4) De WAN instellingen van de eigen router.

5) De port-forwardings op de eigen router.

Draait de eigen router in router of in bridge mode?

https://

1 + 2 - DHCP settings V8

https://

3 DMZ definitie op V8

https://

4. WAN instellingen router (default)

https://

5. Port forwards eigen router

Nu ik screenshot 4 zie, vind ik het vreemd dat ik mezelf überhaupt kon pingen en zelfs port scannen.

Reputatie 7
Kan je ook nog een screenshot posten van de Internet setup van jouw eigen router en als mogelijk het MAC adres van de WAN/Internet poort van jouw eigen router.

Het klopt dat het vreemd is dat je überhaupt een reply krijgt op een ping aangezien ook op jouw eigen router ingesteld is dat deze niet mag reageren op een ping.

Rare vraag wellicht, maar ik neem aan dat de UTP kabel vanaf de Experia Box aangesloten is op de WAN/Internet poort van jouw eigen router.

https://

Ik had nooit gedacht ooit een vraag te krijgen of ik een kabeltje wel goed heb aangesloten. Maar ja, deze zit gewoon goed aangesloten.

Maar zoals ik al in een eerdere post had staan, bestond dit probleem al voordat ik er überhaupt nog een router tussen had hangen.

Reputatie 7
Ook nooit gedacht dat ik zo'n rare vraag zou gaan stellen ;), maar ja als je sommige posts leest op dit forum dan blijken er mensen te zijn die dit wel gedaan hebben.

Ik had jouw antwoord eigenlijk dan ook al verwacht.

Die configuratie ziet er dus 100% goed uit.

Dat mensen van buitenaf jouw publieke IP adres niet kunnen pingen is correct, er is geen apparaat die op die ping zal reageren. De enige apparaten die op een ping van buitenaf kunnen reageren zijn de router (NAT device) zelf en de achterliggende DMZ Host. Als je op de Netgear het vinkje zou zetten bij "Respond to ping on Internet port", dan zal zo'n ping wel succesvol zijn.

Het lijkt er op dat de NAT loopback op de V8 te vroeg plaatsvindt (als het ware nog binnen het eigen netwerk op poort 192.168.2.254). Dit zou verklaren waarom jij vanaf jouw eigen netwerk een reply krijgt op een ping (deze is dan alsof je 192.168.2.254 pingt). Dit zou ook kunnen verklaren waarom de routering naar de DMZ Host of port-forwardings niet goed gaat vanaf het eigen netwerk. De DMZ Host en port-forwarding functionaliteit zit als het ware tussen het publieke adres en het interne adres van de router (192.168.2.254) en zegt eigenlijk:

1) Alles vanaf het buitenaf (publieke adres) waarvoor een port-forwarding is gedefinieerd stuur door naar het IP adres in de port-forwarding

2) Als er een DMZ Host is gedefinieerd stuur dan alles waarvoor geen port-forwarding is gedefinieerd door naar de DMZ Host en anders naar de router zelf (192.168.2.254). Uitgezonderd TCP poort 8085 op Experia Boxen, die gaat altijd naar de router zelf.

Als vanaf het eigen netwerk een verzoek aan het publieke adres dus afgehandeld wordt als een verzoek aan 192.168.2.254, dan verklaart dat een hoop en heb je toch gelijk 😃, de oorzaak is een fout in de NAT loopback. 

Het verklaart echter niet waarom de eerste 24 uur wel zou werken en daarna niet meer.

Reageer