Nachdem ich mir fast die Zähne dran ausgebissen hätte und jetzt wohl den Durchbruch habe, hier mal ein paar Hints für Menschen in ähnlicher Lage.
Aufbau: VDSL-Modem -> Edgerouter X -> Fritzbox 7590. VoIP über 1&1-Anschluß.
Problem: Manchmal klingelt es, manchmal nicht.
Kurzfassung: tcpdump auf dem Edgerouter zeigt, dass die Fritzbox nur eine Verbindung zu einem der beiden 1&1 SIP Server öffnet. 212.227.124.129 oder .130. Wobei das zufällig ist, welcher. Allerdings antwortet irgendeinder der beiden um ein Klingeln zu signalisieren. Über conntracker auf dem edgerouter geht natürlich nur die eine Verbindung nach drinnen, die von der Fritzbox geöffnet wurde. Die andere läuft auf und der Anrufer hört eine Ansage im Stil "der Teilnehmer ist vorübergehend nicht erreichbar".
Lösung: Zusätzlich zum normalen Masquerading ein Destination NAT auf dem edgerouter für beide IPs Port 5060 mit translation auf die Fritzbox 5060. die nimmt dann auch die eigentlich unbekannte zweite IP an, obwohl sie dafür ja keinen Socket offen hat. Und plötzlich klingelt es immer.
Aufbau: VDSL-Modem -> Edgerouter X -> Fritzbox 7590. VoIP über 1&1-Anschluß.
Problem: Manchmal klingelt es, manchmal nicht.
Kurzfassung: tcpdump auf dem Edgerouter zeigt, dass die Fritzbox nur eine Verbindung zu einem der beiden 1&1 SIP Server öffnet. 212.227.124.129 oder .130. Wobei das zufällig ist, welcher. Allerdings antwortet irgendeinder der beiden um ein Klingeln zu signalisieren. Über conntracker auf dem edgerouter geht natürlich nur die eine Verbindung nach drinnen, die von der Fritzbox geöffnet wurde. Die andere läuft auf und der Anrufer hört eine Ansage im Stil "der Teilnehmer ist vorübergehend nicht erreichbar".
Lösung: Zusätzlich zum normalen Masquerading ein Destination NAT auf dem edgerouter für beide IPs Port 5060 mit translation auf die Fritzbox 5060. die nimmt dann auch die eigentlich unbekannte zweite IP an, obwohl sie dafür ja keinen Socket offen hat. Und plötzlich klingelt es immer.