NetVoIP Ports schlau definieren
-
Ich denke der wichtigere Part ist eher das hier:
https://wiki.netvoip.cloud/display/WN/netvoip.ch+%7C+SIP-Server
Das andere ist ja nur ne bebilderte Anleitung wie man den SIP Account auf der FB einrichtet :)
Ich würde daher erstmal hergehen und ein Alias mit den SIP Signalling IPs machen (.113, .114 und .152) und eines mit dem /27er Subnetz in dem die RTP Server rumstehen. Dann noch ein Port Alias für RTP mit 35000-65000. Sowie ein Alias mit der Fritzbox hinter der pfSense.
Danach würde ich wie folgt vorgehen:
- Auf LAN:
- Proto UDP
- Source: (Alias der FB intern)
- Destination: (Alias SIP Signalling IPs)
- Destination Port: SIP (5060)
- allow
- log
Damit wird dann abgehend schonmal SIP geloggt was da passiert.
Dann weiter:- NAT/Port Forward
- Proto UDP
- Source: (Alias SIP Signalling IPs)
- Destination: (WAN Address)
- weiterleiten an: (Alias FB intern)
- Destination Port: 5060 UDP
- auto rule erstellen
Warum? Damit auch eingehend signalling SIP via 5060 vom Provider bei deiner Fritzbox ankommen kann.
Dann:- NAT/Port Forward
- Proto UDP
- Source: (Alias RTP IP Range)
- Destination: (WAN Address)
- weiterleiten an: (Alias FB intern)
- Destination Port: (Port Alias RTP Ports 35000-65000)
- auto rule erstellen
Die RTP Ports reinkommend reinlassen aber nur aus dem VoIP Subnetz vom Provider und direkt an die Fritte schicken.
Nicht vergessen noch:
- NAT/Outbound NAT (!!)
- Hybrid umstellen (oder ganz auf manuell je nachdem was man sich traut)
- Einzelne Regel vor den anderen erstellen mit
- Source: (IP Fritzbox)
- Destination: *
- Ports: *
- Proto: darf ruhig auch * sein
- NAT Addr: WAN addr
- static port an
Bei allen Regeln den Log Haken nicht vergessen, das sollte hinhauen.
Und dann mal loggen und schauen, wenn die FB versucht sich zu verbinden (udp/5060 müsste im Log auftauchen) und mit wem. Und auf dem WAN dann Loggen und schauen, ob von dort was zurück kommt (udp/5060 oder UDP >35000er Ports).Evtl. ist die Seite mit den IPs nicht ganz aktuell etc., das muss man dann rausknobeln und schauen.
Im Netz finde ich aber viele widersprüchliche aussagen welche Ports da zu verwenden sind und wie man die jetzt auch noch gut abschirmt.
Das liegt daran, dass jeder Frosch im Netz mit einem Blog behauptet, DAS Rezept für Regeln für SIP und Co zu kennen. Das kann es aber gar nicht geben, denn jeder SIP/VoIP Provider backt seine eigenen Brötchen und was für den einen stimmt, ist für den anderen wieder falsch. Es kommt also immer auf die Summe aller Teile an. Welche SIP Provider, welche Verbindung, welche Geräte und über welchen Modus Operandi wird die Verbindung aufgebaut etc. Wohl dem, dessen Provider ordentliche Dokumentation über IPs und Ports am Start hat. Ohne Werbung zu machen ist aber bspw. SIPgate einer der großen Player, die da vorbildlich arbeiten (klar auch Pionier in dem Gebiet, aber trotzdem!) und alles in ihren Dokus offengelegt haben. Wohin muss welche IP mit welchen Ports über welches Proto erreichbar sein etc. etc. ist es ein Trunk oder mehrere Einzelverbindungen usw. Würde ich mir für alle Provider wünschen, dass die verpflichtend ihre Kommunikationsbeziehungen so offenlegen und dokumentieren müssen, dann gäbe es viel weniger try&error und Testspielchen beim Thema SIP :)
Cheers
- Auf LAN:
-
Danke für die Ausführungen. Ich versteh leider nicht alles genau. Daher hier ein paar Rückfragen:
Meinst du mit "und eines mit dem /27er Subnetz in dem die RTP Server rumstehen." dass ich sowas anlegen soll?:
Als Rule am LAN habe ich es jetzt so:
Das NAT schaut so aus:
Outbound so?:
Wäre froh wenn du das nochmal Querlesen könntest um mir meine sicherlich eingebauten Fehler um die Ohren zu hauen.
-
also ich benötige da an einem Anschluss der Telekom nur die Outbound-NAT-Rule, keinerlei Port-Forwards. Im Telefon ist ein Keep-Alive von 30 s eingestellt. Die Ports werden stateful von "innen" geöffnet.
Die Source ist die IP meines IP-Telefons im LAN.
-
@wkn das ist bei mir an einem willy.tel voip anschluß auch bei mir so. nur die outbound nat. läuft
-
Die States geben folgendes aus:
Was sagt denn der closed Eintrag? Gerät ...111.249 versucht via Port 39122 auf die IP 192.168.178.210 zuzugreifen???
192.168.178.0/24 war mal früher mein altes Netz. Ist das vielleicht der Versuch das Mobilteil zu erreichen? Ich verstehe es leider nicht.
-
@jathagrimon ich habe es ganz simple.
wie schon geschrieben einfach eine outbound nat erstellt.
hier die stats
-
Bei mir hat das so funktioniert, wollte das maximal einschränken.
Hybrid Outbound NAT:
Port Alias:
Lan Out Regelwerk hast du ja schon.
Die Ports für den Alias kannst du in der Fritz unter Diagnose -> Sicherheit finden.
-
Ja man kann es erstmal nur mit der Manual Outbound NAT Rule probieren.
Warum Forwards? Weil einige SIP Dienstleister Signalling (SIP inbound) zuerst versuchen wenn ein Anruf rein kommt. Gerne und gerade genutzt bei SIP Trunks bspw., da reicht es eben nicht nur abgehend zu arbeiten. Für 90% der Fälle kann das klappen, aber dann hat man eben die schlecht verfolgbaren Fehlerchen, dass immer mal wieder vereinzelt Anrufe nicht reinkommen oder man die ersten Sekunden nicht verstanden wird. Weil der Dienstleister versucht von außen zu schicken, das geht nicht, läuft in Timeout und die Anlage nimmt dann von innen nach extern Verbindung auf. Aber nicht jede Anlage und nicht jeder Anbieter spielt da eben mit.
Willkommen im Chaos-Zoo von SIP :)
Cheers
\jens -
So, da finde ich mal wieder etwas Zeit am Problem weiterzuforschen.
Zwischenbericht:
- Ich kann mit dem Fritzfon nun raustelefonieren.
- Eingehende Anrufe klingeln aber nicht
Zu dem Problem sollten ja die OutboundRegeln kein Thema mehr sein.
Meine Konfig aktuell:
Die Regeln:
Die Fritzbox hat eine IP aus dem Netz "SWISS" .
Wenn ich den Verbindungsaufbau versuche kommt lange kein Ton und dann nach ca. 20 Sekunden scheint es zu klingeln (zumindest hört man das als Anrufer). Das Telefon bleibt jedoch stumm.
Jemand eine Idee?
Danke
-
@jathagrimon
Bei mir ist das Setup leicht anders (die FB ist vor der PFS), aber das sollte eigentlich egal sein, denn Du willst ja durch die Firewall von der FB zum Telefon.
Ich musste eine Route auf der FB einrichten, die so aussieht:
10.0.20.117 ist mein iPhone (das seit dem Einrichten zuverlässig klingelt)
10.10.10.112 ist meine WAN-IP der PFSGruß, Jörg
-
Danke für die Idee. Da die FB bei mir nicht als Router läuft sondern den Internetanschluss "mitbenutzt", gibt es den Menüpunkt bei mir nicht:
-
Du brauchst kein eingehendes Regelwerk und keine Portweiterleitung auf dem WAN. Du musst nur eine Outbound NAT für die IP der Fritz einrichten und in der Fritz einstellen, dass die Portweiterleitung alle 30 Sekunden aufrecht erhalten werden soll.
Dann funktioniert es auch mit eingehenden Rufen sauber.
Denn SIP nutzt dynamisch gewisse Ports um 5060 rum, da hilft dir also eine rein statisches Portforwarding nicht.
Erlaubst du aber der Fritz selber über das NAT raus Ports zu öffnen, sind diese Statefull und der Rückweg vom Provider bei einem eingehendem Call ist damit sichergestellt.
-
HA! Ich habs gelöst und wenn man sich das so anschaut ist es mega easy und macht total Sinn. :-)
Hier also meine Config für die Nachwelt und alle die das vielleicht mal suchen.
Daten vom VoiP Anbieter:
Alias-Einträge anlegen:
Eingehend:
Details SIP:
Details RTP:
Regeln:
Details SIP Regel:
Details RTP Regel:
Ausgehend:
Detaiils Ausgehend:
In der Fritzbox:
FritzBox läuft bei mir nicht als Router sondern als ?Client?
Rufnummer definieren:
Auf den Rest der Config in der Fritzbox gehe ich jetzt nicht näher ein.
Vielen Dank für Eure Unterstützung.
Ich lass es jetzt mal Klingeln. :-)