Routing Problem zw. Bridge und NAT (PJSIP)

Gemeinsam ins Internet mit Firewall und Proxy.
Antworten
marting
Beiträge: 61
Registriert: 30.09.2008 17:31:05

Routing Problem zw. Bridge und NAT (PJSIP)

Beitrag von marting » 31.07.2014 17:03:19

Hallo,

ich habe ein sehr verzwicktes Problem, bei dem ich absolut kein Land sehe. Es geht darum, dass in meinem Netz das normale/alte chan_sip funktioniert, aber das neuere PJSIP nicht. Ich kann die Schuld aber auch nicht an Asterisk/Digium/PJSIP abtreten, weil das Problem auf der Firewall auftritt.

Folgendes Setup auf der Firewall (HP DL380g4):
eth0: Hängt am Telekom Gateway mit öffentlichem Subnet 1.2.3.0/24 (GW IP: 1.2.3.5)
eth2: Servernetz (1.2.3.0/24)
eth3: Büronetz (192.168.0.0/24)
br0: Bridge zwischen eth0 und eth2
SNAT 192.168.0.0/24 auf 1.2.3.6
Asterisk Server: 1.2.3.110 an eth2 (Port 5060 für PJSIP und Port 5061 für chan_sip)

Das Telefon (192.168.0.168) kann sich sowohl mit PJSIP als auch mit chan_sip registrieren, es wird im Asterisk auch die korrekte IP und Port registriert. Ferner ist ein Softphone (Handy von außen ohne NAT) am VoIP Server registriert.
Wenn das Telefon per chan_sip registriert ist, kommen das SIP/INVITE Paket am Telefon an, per pjsip nicht.
Ich habe den Weg des Invite Pakets nun mit tcpdump untersucht und folgendes festgestellt:
- eth2: Das Paket kommt in beiden Fällen korrekt vom SIP Server an der Firewall an mit der NAT-IP als Ziel (1.2.3.6) und dem korrekten Src und Dest Port
- br0: Das SNAT wird korrekt nachgeschlagen und in beiden Fällen zu der IP 192.168.0.168 aufgelöst und erscheint auf der Bridge mit DestIP 192.168.0.168
- eth3: Hier kommt das Paket nur bei chan_sip an.

Es gibt keine unterschiedlichen Firewallregeln für 5060 und 5061, es wird nicht gefiltert.

Conntrack sieht mir auch richtig aus:

Code: Alles auswählen

root@sfw1:~# grep 3072 /proc/net/ip_conntrack
udp      17 143 src=192.168.0.168 dst=1.2.3.110 sport=3072 dport=5061 src=1.2.3.110 dst=1.2.3.6 sport=5061 dport=3072 [ASSURED] mark=0 use=2
udp      17 3584 src=192.168.0.168 dst=1.2.3.110 sport=3072 dport=5060 src=1.2.3.110 dst=1.2.3.6 sport=5060 dport=3072 [ASSURED] mark=0 use=2
Hat irgendjemand eine Idee, in welche Idee ich weiter forschen könnte?

Viele Grüße
Martin

PS: Ich habe das gleiche Phänomen sowohl bei Snom/Grandstream und Softphone


Edit: Hier relevante iptables Ausschnitte

Code: Alles auswählen

root@sfw1:~# iptables -t nat -nL | grep -E '506[0-9]'
root@sfw1:~# iptables -t mangle -nL | grep -E '506[0-9]'
root@sfw1:~# iptables -nL | grep -E '506[0-9]'
LOG        udp  --  0.0.0.0/0            1.2.3.110        udp dpts:5060:5061 LOG flags 0 level 6 prefix "fwbuilder: voip: "
LOG        udp  --  1.2.3.110        0.0.0.0/0            udp dpts:5060:5061 LOG flags 0 level 6 prefix "fwbuilder: voip: "
ACCEPT     udp  --  0.0.0.0/0            1.2.3.110        udp dpts:5060:5061 state NEW
Und eine weitere Erkenntnis: Es ist nur PJSIP auf Port 5060 betroffen.
Ändere ich den PJSIP Port auf 5061 oder 5000, wird das Gespräch aufgebaut.
Ändere ich den chan_sip Port auf 5060, wird das Gespräch ebenfalls aufgebaut.

a.jakob
Beiträge: 247
Registriert: 09.08.2004 21:41:16
Wohnort: Bendorf

Re: Routing Problem zw. Bridge und NAT (PJSIP)

Beitrag von a.jakob » 01.08.2014 09:31:28

Hallo..

also wenn ich es richtig verstehe gibt es "nur" das problem mit PJSIP auf port 5061 ?

falls dem so ist.. würde ich als erstes ne conf beim PJSIP vermuten... verwendet irgendwas dort den port bereits? evtl. ein Standardport der so nicht expliziet in der conf bislang auftaucht? würde wohl mal den port auf die 5000 umlegen und dann via nmap tcp und upd scan auf die 5061 machen. müsste dann ja eigentlich zu sein der port...
Den Netzaufbau vermute ich erstmal nicht als fehlerquelle..
mfg

andre

marting
Beiträge: 61
Registriert: 30.09.2008 17:31:05

Re: Routing Problem zw. Bridge und NAT (PJSIP)

Beitrag von marting » 01.08.2014 09:55:24

Das Problem gibt es nur, wenn PJSIP auf 5060 ist.

Das Problem ist aber nicht, dass der VoIP Server das Paket nicht annimmt, sondern dass er es von der Firewall nicht zugestellt bekommt.

Benutzeravatar
bluestar
Beiträge: 2334
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: Routing Problem zw. Bridge und NAT (PJSIP)

Beitrag von bluestar » 05.06.2017 15:18:11

Ich frage mal ganz direkt nach dem Thema ip_conntrack_sip - lädst du das Firewall-Modul auch explizit mit der Option auch Port 5061 zu beachten?

Code: Alles auswählen

modprobe ip_conntrack_sip ports=5060,5061

Antworten