UDM-Pro mit public IP-Range

Die UniFi Dream Machine Pro von Ubiquiti ist an und für sich ein schönes Gerät, will man damit aber etwas professioneller unterwegs sein, zB mit einer public IP-Range ohne NAT, so wirkt die Firmware noch unausgereift und man muss derzeit noch zu Tricks greifen.

Folgend die Notizen wie man NAT deaktivieren kann, getestet mit Firmware 1.8.5.

VORSICHT: Nachdem NAT deaktiviert wurde, steht euer PC öffentlich im WAN! Tut folgendes nur wenn Ihr wisst was Ihr macht.

Als erstes erstellen wir ein VLAN mit der ersten public-IP die wir via PPPoE erhalten. Dies kann noch über das WEB-GUI gemacht werden. Nach Lust und Laune kann hier auch noch ein DHCP-Server eingerichtet werden.

Nun verbinden wir via SSH auf die UDM-Pro und starten eine Shell:

ssh root@<ip-adresse der UDM-Pro>
# unifi-os shell

Und laden ein Paket welches uns erlaubt, ein Script persistent zu speichern nach dem Reboot der UDM-Pro auszuführen (evtl. auf neue Version prüfen):

root@ubnt:/# curl -L https://raw.githubusercontent.com/boostchicken/udm-utilities/master/on-boot-script/packages/udm-boot_1.0.2_all.deb -o udm-boot_1.0.2_all.deb
root@ubnt:/# dpkg -i udm-boot_1.0.2_all.deb
root@ubnt:/# exit

Danch kontrollieren welches unsere Firewall-Regel ist welche NAT macht:

# xtables-multi iptables -t nat -L UBIOS_POSTROUTING_USER_HOOK -v --line-number
 Chain UBIOS_POSTROUTING_USER_HOOK (1 references)
 num   pkts bytes target     prot opt in     out     source               destination         
 1     1873  154K MASQUERADE  all  --  any    ppp0    anywhere             anywhere             /* 00000001095216660481 / 2        1   264 MASQUERADE  all  --  any    eth9    anywhere             anywhere             / 00000001095216660482 */

In meinem Fall ist es die erste Regel mit dem out-interface ppp0.
Diese müssen wir nun löschen mit einem Script, welches auch nach einem Reboot die NAT-Regel wieder entfernt. Zuerst erstellen wir das File:

cd /mnt/data/on_boot.d/
vi disable_nat.sh

Dann brauchen wir folgenden Inhalt der die Regel löscht. Falls es bei euch eine andere Regel-Nr. ist, einfach die Zahl am Ende anpassen. Bei mir ist es Regel Nr. 1:

#!/bin/sh
xtables-multi iptables -t nat -D UBIOS_POSTROUTING_USER_HOOK 1

Die Datei speichern und dann noch ausführbar machen:

# chmod +x disable_nat.sh

Nun kann man das z.B mal von Hand ausführen und kontrollieren:

# ./disable_nat.sh
# xtables-multi iptables -t nat -L UBIOS_POSTROUTING_USER_HOOK -v --line-number
 Chain UBIOS_POSTROUTING_USER_HOOK (1 references)
 num   pkts bytes target     prot opt in     out     source               destination         
 1        1   264 MASQUERADE  all  --  any    eth9    anywhere             anywhere             /* 00000001095216660482 */

Wie man sieht, ist nun nur noch die zweite Regel vorhanden resp. hat den Platz der ersten Regel eingenommen. Ab sofort ist NAT deaktiviert.

Hat man nur ein VLAN auf welchem man NAT deaktivieren will, kann man evtl. mit den in/out Interfaces spielen. Ich habe das nicht getestet.

4 thoughts on “UDM-Pro mit public IP-Range

  1. Hallo,

    Danke für den Beitrag.
    Habe in einem anderen Blog Gelsen, dass die NAT Regeln immer wieder da sind, sobald eine FW Regel geändert und angelegt wurde. Ist das korrekt?
    Dann müsste ja jedes Mal das Script ausgeführt werden oder die UDMP Neugestalten werden

    Wäre dankbar für eine Rückmeldung.

    Gruß Stefan

  2. Hi Stefan

    Da ich momentan nicht mehr im Besitz einer UDM-Pro bin, kann ich dir das nicht bestätigen. Aber ich habe das Verhalten auch so vermutet. Somit wäre das Script starten wohl die schnellste Variante, wobei es dabei auch zu beachten gibt dass die NAT-Regel evtl. auch verschoben wird und man nicht die falsche Regel löscht.
    Hoffen wir dass ubnt mal eine Firmware raus bringt die dies offiziell unterstützt.

    Gruss

    1. Hey,

      Danke für deine Rückmeldung.
      Mit verschoben meinst du, dass die Nummer der Regel sich ändert?

      Darf ich fragen, was du bei dir nutzt?

      Bin am überlegen alternativ das USG 4 Pro zu holen aber es ist ja doch weitaus langsamer und habe das angefühlt, dass dieses bald EoS ist.

      Gruß Stefan

      1. Genau, es könnte sein dass die NAT-Regel verschoben wird und das Script dadurch was falsches löscht.

        Ich hab einen UniFi Switch und paar AccessPoints mit einem UniFi Controller hinter einer Firewall.

        Gruss

Leave a Reply