Am Montag, 1. November 2021, 17:35:21 CET schrieb ro...@seffner.de: > Hier habe ich eine Lösung gefunden. Das sieht aus wie eine Map kombiniert > mit einem Set, läuft aber als Map. > https://wiki.nftables.org/wiki-nftables/index.php/Multiple_NATs_using_nftabl > es_maps#Multiple_NAT_mapping_with_address_and_port > > Nur kann ich die Regel (aus obigem Beispiel) nun nicht mehr recht lesen. > > % nft add map nat foo { type inet_service : ipv4_addr . inet_service ; } > % nft add element nat foo { \ > 1100 : 192.168.1.2 . 5061, \ > 1101 : 192.168.1.3 . 5061, \ > 1400 : 192.168.1.4 . 5061 \ > } > % nft add rule nat pre ip protocol udp dnat ip addr . port to udp dport map > @foo > > Funktion ist hier, dass Pakete an die eigenen Ports 1100, 1101 usw. auf > Hosts mit den Adressen 192.168.1.x und andere Ports dort umgeschrieben > werden (DNAT). > Jetzt zerlegen wir mal die Regel: > "nft add rule nat pre ..." - füge eine Regel in die Tabelle nat und Chain > pre hinzu > "...ip protocol udp..." - matcht für Pakete vom Typ UDPv4 ... > Und jetzt meine Unklarheiten > "...dport map @foo" - ... an den EIGENEN Port "dport", der in der Map "foo" > zu suchen ist? > "...dnat ip addr . port to udp..." - und mache DNAT auf das "ip addr . > port"-Paar aus der entsprechenden Zeile in der Map; das "to udp" am Ende > irritiert an dieser Position > > > Mit freundlichen Grüßen / Kind regards > Ronny Seffner
Danke, dass Du uns die Lösung mitteilst. Ich war schon sehr neugierig ... Bernhard