Skip to main content
Beantwoord

Zyzel T-75 en QUIC via NAT vanaf interne computers.

  • January 27, 2026
  • 4 reacties
  • 92 Bekeken

Ik wil graag een issue voorleggen voor een probleem in de niet-urgente soort maar als ik geen melding maak wordt het zeker nooit opgelost.

In het kort : QUIC werkt niet via het publieke ip van het Zyzel modem vanaf interne computers, wel vanaf elders op het Internet.

Short story long:
Als ik het modem en mijn interne webserver configureer voor QUIC (HTTP via UDP) werkt het wel voor buitenaf, maar intern krijg ik geen connectie.
Ik configureer in het modem een NAT regel voor poort 443 met protocol ALL, dus ook UDP.
Op de interne webserver draait OpenResty/NgInx.
De configuratie is van buitenaf goed te testen met:

https://http3check.net/?host=example.ddns.net
QUIC is supported
HTTP/3 is supported

Alleen vanaf interne computers is er geen verbinding te krijgen, wel als ik direct naar het interne adres ga, buiten het modem om. Het is het modem waardoor ik niet lokaal kan connecten.

Er zijn workarounds maar daar hangen weer nadelen aan.

a. QUIC is nog nieuw, HTTP2 doet het wel maar ik ben toekomstgericht en probeer de laatste technologie te adopteren en als ik QUIC uitschakel vanwege een intern probleem is dat meteen ookvoor extern en extern werkt het prima.
b. Een reverse-proxy dienst zoals Cloudflare heeft geen last maar dan is al mijn verkeer inzichtelijk voor een derde partij, ook het interne.
c. Via DNS of hosts file de publieke namen omleiden naar het interne adres maar dat geeft extra onderhoud. Het probleem is dat wanneer ik mijn laptop elders gebruik of intern deze config telkens moet worden aangepast. Vervelend.
d. Een tunnel leggen naar buiten om intern iets te doen. Paard achter de wagen..
Ik ben ook niet in afwachting van eenzelfde soort workaround maar hoop op een fix in het modem zodat de local loop gaat werken voor QUIC.

De nodige details :

Modem : Zyxel EX7501-B0 V5.18(ACDA.0)T75C_b13
Service HTTP/2 (TCP) en QUIC (UDP)
Server: openresty/1.27.1.2

De configuratie van OpenResty/NgInx is als volgt

server {
  server_name example.ddns.net;
  location /test/ {
    root /var/www/htdocs/example.ddns.net;
    ssi on; 
  }
  listen 443 ssl; #
  http2 on;
  listen 443 quic;
  # Add Alt-Svc header to advertise HTTP/3 support to clients
  add_header alt-svc: h3=":443";
}

Ik neem aan dat dit error report richting de modem guru's moet om het in de Zyxel firmware op te lossen. Ik kan eventueel helpen om het in een lab net zo op te zetten maar eigenlijk is het afwijkende al vermeld.
Ik hoop dat jullie hier iets mee kunnen doen, laat in ieder geval weten dat er iets mee gaat gebeuren en welke referentie jullie ervoor hebben.

Hartelijk dank,
Peter Tunderman

Beste antwoord door ptunderman

​@Tommie van Odido had mij gevraagd om hier even naar te kijken. Als ik met twee clients achter een T75 test met netcat zie ik niet dit probleem.

T75 Info
T75 Port forward

Als ik op de server luister op UDP Poort 443 

user@server:~$ curl icanhazip.com
xxx.xxx.x18.249
user@server:~$ sudo nc -u -l -p 443

En op Client een verzoek stuur op het publieke IP

user@client:~$ curl icanhazip.com
xxx.xxx.x18.249
user@client:~$ echo "NAT reflection test" | nc -u xxx.xxx.x18.249 443
^C

Zie ik deze netjes binnenkomen 

user@server:~$ sudo nc -u -l -p 443
NAT reflection test

 

 

 

Succes
Het blijkt toch de add_header te zijn geweest.
Als ik
  add_header alt-svc: h3=":443";  
vervang door
   add_header Alt-Svc 'h3=":443"; ma=86400' always
Gaat het werken.

De rest van de conig is door ChatGPT gehaald maar die adviezen zijn dan erg misplaatst omdat de versie van Openresty 1.27.1.2 niet is meegewogen, dat moet je er dus bij zetten in de prompt.

Bedankt voor het echte denken!

Bekijk origineel

4 reacties

Forum|alt.badge.img
  • Odido Superuser
  • February 3, 2026

Dit klinkt inderdaad als een probleem met de NAT in de router. Heb je al eens een een tcptrace gedaan bij het opzetten van een verbinding van binnenuit? Krijg je een response (evt een icmp? Probeer eens een netcat -u <adres> <poort> (is dat 80 of 443?). Met wat meer info kan een moderator (@tommie ?)  het probleem doorgeven aan de techneuten die het mogelijk bij Zyxel kunnen aankaarten,

Tot die tijd is praktisch gezien een locale DNS server je beste optie denk ik


rvk01
  • February 3, 2026

Gooi dat configuratie stukje eens door chatgt. Die geeft nogal wat dingen aan die niet goed zouden zijn. Nu vertrouw ik normaal niet blind op AI maar het kan soms wel handig zijn om hints te krijgen.

Zelf viel me op dat je http2 on; doet maar wel adverteert dat http3 toegestaan is. De add_header ziet er ook wat raar uit. Daar zou ik eerder add_header xxx 'waarde'; verwachten. Dus add_header Alt-Svc 'h3=":443"; ma=86400';


Forum|alt.badge.img+4
  • Odido medewerker
  • February 5, 2026

​@Tommie van Odido had mij gevraagd om hier even naar te kijken. Als ik met twee clients achter een T75 test met netcat zie ik niet dit probleem.

T75 Info
T75 Port forward

Als ik op de server luister op UDP Poort 443 

user@server:~$ curl icanhazip.com
xxx.xxx.x18.249
user@server:~$ sudo nc -u -l -p 443

En op Client een verzoek stuur op het publieke IP

user@client:~$ curl icanhazip.com
xxx.xxx.x18.249
user@client:~$ echo "NAT reflection test" | nc -u xxx.xxx.x18.249 443
^C

Zie ik deze netjes binnenkomen 

user@server:~$ sudo nc -u -l -p 443
NAT reflection test

 


  • Auteur
  • heeft eerste post geplaatst
  • Antwoord
  • February 6, 2026

​@Tommie van Odido had mij gevraagd om hier even naar te kijken. Als ik met twee clients achter een T75 test met netcat zie ik niet dit probleem.

T75 Info
T75 Port forward

Als ik op de server luister op UDP Poort 443 

user@server:~$ curl icanhazip.com
xxx.xxx.x18.249
user@server:~$ sudo nc -u -l -p 443

En op Client een verzoek stuur op het publieke IP

user@client:~$ curl icanhazip.com
xxx.xxx.x18.249
user@client:~$ echo "NAT reflection test" | nc -u xxx.xxx.x18.249 443
^C

Zie ik deze netjes binnenkomen 

user@server:~$ sudo nc -u -l -p 443
NAT reflection test

 

 

 

Succes
Het blijkt toch de add_header te zijn geweest.
Als ik
  add_header alt-svc: h3=":443";  
vervang door
   add_header Alt-Svc 'h3=":443"; ma=86400' always
Gaat het werken.

De rest van de conig is door ChatGPT gehaald maar die adviezen zijn dan erg misplaatst omdat de versie van Openresty 1.27.1.2 niet is meegewogen, dat moet je er dus bij zetten in de prompt.

Bedankt voor het echte denken!