linux routing

Mit Port-Forwarding musst Du nur arbeiten wenn Du wenn aussen auf dem PDA zugreifen willst.
Ansonsten reicht simples Masquerading (SNAT)

Beispiel:
Code:
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.2 -j MASQUERADE

Damit das funktioniert muss auch das Routing aktiviert sein.
Das geschieht mittels
Code:
echo "1" > /proc/sys/net/ipv4/ip_forward

Das sollte eigentlich alles sein, vorausgesetzt Du hast nicht noch andere Regeln auf der Linux-Box konfiguriert die evtl. was gegen eine solche Verbindung haben koennten.

Der Linux-Rechner muss den Router als Default-Gateway haben, der PDA den Linux-Rechner.

Ich bin uebrigens nicht ganz sicher ob in POSTROUTING das Input-Interface (-i) zur Verfuegung steht.
Wenn ich gleich noch die Zeit hab werd ich mal nachsehen.

Nachtrag:
Okay, POSTROUTING hat das Input-Interface nicht, hab die Regel etwas geaendert.
Das maskiert alle Pakete die von 192.168.0.2 kommen und auf eth0 (der Netzwerkkarte fuer's LAN) rausgehen.
 
Zuletzt bearbeitet:
Soooh...irgendwie will das noch immer nicht so recht:
Code:
cat /proc/sys/net/ipv4/ip_forward
--1

iptables -L -t nat
--Chain PREROUTING (policy ACCEPT)
--target     prot opt source               destination
--
--Chain POSTROUTING (policy ACCEPT)
--target     prot opt source               destination
--MASQUERADE  all  --  192.168.0.2          anywhere
--
--Chain OUTPUT (policy ACCEPT)
--target     prot opt source               destination
--

ifconfig wlan0 192.168.0.1 netmask 255.255.255.0
--wlan0      Protokoll:Ethernet  Hardware Adresse 00:00:00:00:00:00(sagichnich)
--          inet Adresse:192.168.0.1  Bcast:192.168.0.255  Maske:255.255.255.0
--          inet6 Adresse: fe80::204:23ff:fe5a:46da/64 Gültigkeitsbereich:Verbindung
--          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
--          RX packets:92 errors:0 dropped:0 overruns:0 frame:0
--          TX packets:180 errors:0 dropped:0 overruns:0 carrier:1
--          Kollisionen:0 Sendewarteschlangenlänge:1000
--          RX bytes:6642 (6.4 KiB)  TX bytes:21016 (20.5 KiB)
--          Interrupt:11 Basisadresse:0xe000 Speicher:d0206000-d0206fff
--
die Ad-Hoc Verbindung mit PDA und linux-"server" funktioniert.
Ich kann sowohl die 192.168.0.1 als auch die 192.168.0.2 pingen.
Gateway und DNS des PDA ist 192.168.0.1

Fehlt mir da vielleicht nur noch ein kleiner Parameter beim ifconfig wlan0 um den Gateway anzugeben?
 
TeCe hat gesagt.:
Fehlt mir da vielleicht nur noch ein kleiner Parameter beim ifconfig wlan0 um den Gateway anzugeben?

ich würd erstmal testweise das iptables lassen also ohne die firewal einstellungen!

kommt der linux server ins netz? den der gateway is dafür da um dem rechner (PDA) zusagen über welchen rechner (linux -server) er ins netz gehen soll.
also musste das nur bei dem rechner angeben der ins netz SOLL! ;)

edit: das masquarding mittels iptables musst natürlich mit nehmen ich war bloß etwas verwird weil bei mir bei nem iptables nichts kommt also keine einträge :-)
ich weiß hatt enoch keine zeit mich damit zu beschäftigen!
 
Zuletzt bearbeitet:
hmmmm...bin noch immer am rumfriemeln...

über's ifconfig kann man ja scheinbar keinen gateway mitgeben...also wieder zurück zu route:
Code:
route
--Kernel IP Routentabelle
--Ziel            Router          Genmask         Flags Metric Ref    Use Iface
--192.168.0.0   192.168.0.1   255.255.255.0   UG    0      0        0 wlan0
--192.168.1.0   *               255.255.255.0   U     0      0        0 eth0
--default         192.168.1.1          0.0.0.0         UG    0      0        0 eth0

Bitte, bitte sagt mir das da nur ein einfacher Fehler drin ist...das Thema sollte doch eigentlich echt nicht so schwer sein...?
Wird mir langsam peinlich, wie blöd ich mich scheinbar anstelle...
 
Laeuft auf dem Linux-Rechner der DNS-Server?
Ansonsten wird der PDA die Namen nicht aufloesen koennen und somit auch nicht in's Internet kommen.
 
uhm...DNS...?
bisher hat es gereicht den DNS meines Routers zu nutzen...
Aber selbst der lässt sich nicht per IP erreichen...ich glaub wirklich das es nur noch an der route scheitert...
 
Weil Du sagtest, dass Du beim PDA den Linux-Rechner angegeben hattest.

Moeglicherweise koenntest Du mittels tcpdump oder Ethereal mal den Netzverkehr beobachten und gucken ob Pakete die vom PDA kommen auch in's LAN weitergeschleudert werden.
 
Zurück