Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
-
tanita
- Beiträge: 78
- Registriert: 14.08.2003 13:45:27
- Wohnort: Muc
-
Kontaktdaten:
Beitrag
von tanita » 20.09.2005 12:28:03
Hallo,
versuche mein Problem noch mal zu schildern:
Ich möchte Anfragen aus Netz A nach Server B Port 5050 auf 192.168.11.180 snat-en. Da ich SNAT auf Server B brauche, müsste es in die PREROUTING-Regel.
Netz A = 172.16/12
Server B = 192.168.111.146:5050
Code: Alles auswählen
#/bin/sh
IPTABLES=`which iptables`
test -f $IPTABLES || exit 0
$IPTABLES -A PREROUTING -t nat -p tcp --dst 192.168.111.146 --dport 5050 -j SNAT --to-source 192.168.11.180
Beim Ausführen der Regel bekomme ich die Meldung:
iptables: Invalid argument
Stimmt irgendwas an der Reihenfolge in der Regen nicht? Oder was ist sonst falsch?
geleadene ip_Module
Code: Alles auswählen
webf:~# lsmod |grep ip
ipt_MASQUERADE 3968 0
iptable_nat 22828 1 ipt_MASQUERADE
ip_conntrack 32908 2 ipt_MASQUERADE,iptable_nat
iptable_filter 3072 0
ip_tables 16896 3 ipt_MASQUERADE,iptable_nat,iptable_filter
ipv6 229892 12
Danke,
Servus T.
-
init.d
- Beiträge: 238
- Registriert: 23.03.2004 10:02:51
- Wohnort: München
Beitrag
von init.d » 20.09.2005 14:12:59
hi,
du musst ip_forwarding aktivieren sonst routet es garnichts:
echo "1"> /proc/sys/net/ipv4/ip_forward
bzw. das entsprechende modul laden.
grüsse,
init.d
-
tanita
- Beiträge: 78
- Registriert: 14.08.2003 13:45:27
- Wohnort: Muc
-
Kontaktdaten:
Beitrag
von tanita » 20.09.2005 14:33:24
hm.. wenn ich forward vorher aktiviere, scheint es aktiviert zu sein:
bekomme aber immer noch die Meldung:
iptables: Invalid argument
Welches Modul wäre denn das Richtige? Habe unter Debian Sarge iptables 1.2.11-10 und Kernel 2.6.8-2-386 installiert..
Code: Alles auswählen
webf:~# ls /lib/modules/2.6.8-2-386/kernel/net/ipv4/netfilter/
arptable_filter.ko ip_nat_irc.ko ipt_conntrack.ko ipt_mark.ko ipt_REJECT.ko
arp_tables.ko ip_nat_snmp_basic.ko ipt_dscp.ko ipt_MARK.ko ipt_SAME.ko
arpt_mangle.ko ip_nat_tftp.ko ipt_DSCP.ko ipt_MASQUERADE.ko ipt_state.ko
ipchains.ko ip_queue.ko ipt_ecn.ko ipt_multiport.ko ipt_tcpmss.ko
ip_conntrack_amanda.ko iptable_filter.ko ipt_ECN.ko ipt_NETMAP.ko ipt_TCPMSS.ko
ip_conntrack_ftp.ko iptable_mangle.ko ipt_esp.ko ipt_NOTRACK.ko ipt_tos.ko
ip_conntrack_irc.ko iptable_nat.ko ipt_helper.ko ipt_owner.ko ipt_TOS.ko
ip_conntrack.ko iptable_raw.ko ipt_iprange.ko ipt_physdev.ko ipt_ttl.ko
ip_conntrack_tftp.ko ip_tables.ko ipt_length.ko ipt_pkttype.ko ipt_ULOG.ko
ipfwadm.ko ipt_addrtype.ko ipt_limit.ko ipt_realm.ko
ip_nat_amanda.ko ipt_ah.ko ipt_LOG.ko ipt_recent.ko
ip_nat_ftp.ko ipt_CLASSIFY.ko ipt_mac.ko ipt_REDIRECT.ko
Danke,
Servus T.
-
tanita
- Beiträge: 78
- Registriert: 14.08.2003 13:45:27
- Wohnort: Muc
-
Kontaktdaten:
Beitrag
von tanita » 20.09.2005 14:57:33
Wenn ich anstelle von PREROUTING POSTOUTING einstelle, kommt keine Fehlermeldung, aber die Scr-IP wird überhaupt nicht genatet, sehe auch nichts im tcpdump auf dem vorgeschalteten Loadbalancer...
Geht SNAT nicht mit PREROUTING? Habs beim googlen aber schon gefunden.. Wieso werden die ausgehenden Pakete mit POSTROUTING nicht genatet?
-
herrchen
- Beiträge: 3257
- Registriert: 15.08.2005 20:45:28
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Berlin
Beitrag
von herrchen » 20.09.2005 15:02:18
tanita hat geschrieben:
Ich möchte Anfragen aus Netz A nach Server B Port 5050 auf 192.168.11.180 snat-en. Da ich SNAT auf Server B brauche, müsste es in die PREROUTING-Regel.
man iptables:
SNAT
This target is only valid in the nat table, in the POSTROUTING chain.
It specifies that the source address of the packet should be modified
(and all future packets in this connection will also be mangled),
beschreib' doch mal, was du vorhast (beispiel).
herrchen
-
tanita
- Beiträge: 78
- Registriert: 14.08.2003 13:45:27
- Wohnort: Muc
-
Kontaktdaten:
Beitrag
von tanita » 20.09.2005 16:06:53
Das mit dem Postrouting hab ich auch gelesen. Mein eigentlichens Problem stammt doch anders her. Es wird nicht nach der richtigen Src-IP geschaut, sondern nach der IP im HTTP-Header oder Protocoll geschaut.. D.h. ein SNAT würde hier nix bringen.. muss noch mal genau im tcpdump morgen schauen..
Aber unabhängig von meinem aktuellen Problem möchte ich wissen, was ich beim hiergenannten Naten falsch mache.. Poste das aber später..
Danke,
Servus T.
-
nepos
- Beiträge: 5238
- Registriert: 05.01.2005 10:08:12
Beitrag
von nepos » 20.09.2005 16:26:48
Naja, wenn in der Doku von iptables steht, dass das nur bei POSTROUTING geht, dann wirds schon so sein. Auch wenn google da vielleicht was anderes liefert. Wer sagt denn, dass die Hits von Google korrekt sind
-
rall0r
- Beiträge: 123
- Registriert: 20.05.2005 09:33:48
Beitrag
von rall0r » 20.09.2005 21:44:28
Hallo,
wie wäre es damit:
Code: Alles auswählen
iptables -t nat -A POSTROUTING -s 192.168.111.146 --sport 5050 -o ethX -j SNAT --to 192.168.11.180
Hab das nun nicht getestet aber versuchen kann man es ja mal :)
Gruß,
Ralf
apt-get moo
wer denkt sich soetwas aus?
-
herrchen
- Beiträge: 3257
- Registriert: 15.08.2005 20:45:28
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Berlin
Beitrag
von herrchen » 21.09.2005 03:21:03
tanita hat geschrieben:
Aber unabhängig von meinem aktuellen Problem möchte ich wissen, was ich beim hiergenannten Naten falsch mache.. .
hat denn der router überhaupt ein interface im netz von "192.168.11.180"?
herrchen