So einfach könnte das Leben sein. 3CX möchte mit einem sogenannten Split DNS
arbeiten. Das bedeutet nichts anderes, als dass der Hostname der eigenen 3CX-Installation von außen mit der externen und im eigenen Netzwerk mit der internen IP-Adresse aufgerufen wird. Mit einer OPNsense ist das mit einem Host Override
im DNS schnell erledigt und in den allermeisten Fällen ausreichend. Jedenfalls fast immer.
Gerade mobile Geräte haben die unangenehme Eigenschaft, den eigenen DNS-Server, der eigentlich per DHCP zugewiesen wird, zu ignorieren. Oft ist der Google DNS Server fest eingestellt und eine installierte 3CX APP weiß dummerweise nichts von der internen IP-Adresse. Der Traffic läuft dann in die falsche Richtung "raus ins Internet". Hier kommt Hairpin NAT bzw. Reflection ins Spiel, um diesen Fall wieder einzufangen:
Aufrufe von intern (LAN) auf die externe IP-Adresse (WAN) auf bestimmten Ports werden auf die interne IP-Adresse umgeleitet.
Dazu ist nur eine einfach Regel nötig. Hier wähle ich immer den Reflection
Teil, da oft mit unterschiedlichen Subnetzen (z.B. Gäste Netzwerk) gearbeitet wird und damit der Aufwand etwas geringer wird.
Bedingung: Es gibt zwei ALIAS Einträge
TA
= Interne IP Adresse der 3CXTAPORTS
= Die üblichen Ports der 3CX. In diesem Beispiel ist der Webclient auf Port 5001
Diese werden unter Firewall -> Aliases
angelegt:
Darauf folgt eine neue NAT Regel. Diese wird unter Firewall -> NAT -> Port Forward
angelegt:
- Alle internen Schnittstellen auswählen, die auf die 3CX zugreifen sollen, z.B.
LAN
undGAST
- Als Protokoll reicht
TCP/UDP
- Das Ziel ist die öffentliche IP Adresse, die z.B. bei PPPoE, direkt an der WAN Schnittstelle anliegt. Dazu gibt es den vordefinierten Alias
WAN address
- Der Alias mit den benötigten Ports
TAPORTS
als Start des Bereichs - Der Alias mit den benötigten Ports
TAPORTS
als Ende des Bereichs - Die 3CX als Ziele mit dem Alias
TA
Wenn diese Regel gespeichert wird, erstellt OPNsense dabei direkt die nötigen Firewall Regeln.
Achtet darauf, das diese Regel weit oben steht, sonst wird sie ggf ignoriert.
Nachdem die neue Regel gespeichert und angewandt wurde, sollten dann auch diese Sonderfälle wieder telefonieren können.