• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Einfaches Routing, ich bin am verzweifeln.

Eigentlich ganz einfach.

Ein Server mit 3 Nics

eth0 für DSL
eth1 fürs interne Netz (Kabel)
eth2 fürs interne Netz (WLAN)

ifconfig -a spuckt folgenden aus:

Code:
eth0      Link encap:Ethernet  HWaddr GE:FA:KE:T0:00:00
          inet addr:10.0.0.1  Bcast:10.0.0.255  Mask:255.255.255.0
          inet6 addr: fe80::2e0:7dff:fe82:abb2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:8851830 errors:425 dropped:0 overruns:0 frame:0
          TX packets:9838669 errors:0 dropped:0 overruns:0 carrier:0
          collisions:75418 txqueuelen:100
          RX bytes:2267192648 (2162.1 Mb)  TX bytes:1689955961 (1611.6 Mb)
          Interrupt:11 Base address:0xf000

eth1      Link encap:Ethernet  HWaddr GE:FA:KE:T0:00:00
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::280:adff:fe30:a4e0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:80703 errors:0 dropped:0 overruns:0 frame:0
          TX packets:106665 errors:0 dropped:0 overruns:0 carrier:0
          collisions:624 txqueuelen:100
          RX bytes:11772596 (11.2 Mb)  TX bytes:84997498 (81.0 Mb)
          Interrupt:10 Base address:0xc800

eth2      Link encap:Ethernet  HWaddr GE:FA:KE:T0:00:00
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::250:baff:fe56:74ed/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:83656 errors:0 dropped:0 overruns:0 frame:0
          TX packets:102568 errors:0 dropped:0 overruns:0 carrier:0
          collisions:11 txqueuelen:100
          RX bytes:10939994 (10.4 Mb)  TX bytes:109117669 (104.0 Mb)
          Interrupt:9 Base address:0xcc00

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:3490 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3490 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:573045 (559.6 Kb)  TX bytes:573045 (559.6 Kb)

ppp0      Link encap:Point-to-Point Protocol
          inet addr:80.143.163.24  P-t-P:217.5.98.137  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:8496 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13785 errors:0 dropped:3 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:987112 (963.9 Kb)  TX bytes:942192 (920.1 Kb)

sit0      Link encap:IPv6-in-IPv4
          NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

desweiteren sagt ein route

Code:
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
217.5.98.137    *               255.255.255.255 UH    0      0        0 ppp0
10.0.0.0        *               255.255.255.0   U     0      0        0 eth0
192.168.1.0     *               255.255.255.0   U     0      0        0 eth2
192.168.0.0     *               255.255.255.0   U     0      0        0 eth1
default         217.5.98.137    0.0.0.0         UG    0      0        0 ppp0


So weit so gut.
Mein PC auf eth1 mit 192.168.0.6/24 sagt bei einem
ping auf 192.168.0.1 --> OK
ping auf 192.168.1.1 --> OK
ping auf 192.168.1.2 --> nüscht (Das ist der WLAN Acess Point)
ping auf 192.168.1.3 --> auch nix (WIN XP PC)

Der Win XP PC (192.168.1.3/24)
ping auf 192.168.1.2 -- OK
ping auf 192.168.1.1 -- OK
ping auf 192.168.0.1 -- OK
ping auf 192.168.0.6 -- Nix

Woran liegt's ?
 

Martin Breidenbach

Ultimate Guru
Was hat der 192.168.1.3 als Default Gateway ? Sollte 192.168.1.1 sein.

Gleiches gilt für den Access Point (falls man da sowas einstellen kann).

Auf dem Linux-Rechner muß natürlich Routing eingeschaltet sein.

Ich hatte gerade das Problem daß obwohl Routing eingeschaltet war mein SuSE 9.0 definitiv nicht geroutet hat. Da hat offenbar eine unkonfigurierte aber installierte SuSEFirewall dazwischengefunkt.

Falls Verbindungsaufbau auch in der anderen Richtung notwendig sein soll (192.168.1.3 ruft 192.168.0.6) dann nützt uns Masquerading nichts.
 
OP
6

666pinky666

Newbie
Martin Breidenbach schrieb:
Was hat der 192.168.1.3 als Default Gateway ? Sollte 192.168.1.1 sein.

Jupp ist 192.168.1.1. sonst würde ein Ping auf 192.168.0.1 sowie das maskierte ppp0 nicht funktionieren.

Gleiches gilt für den Access Point (falls man da sowas einstellen kann).

Kann man und ist auch eingestellt.

Auf dem Linux-Rechner muß natürlich Routing eingeschaltet sein.

Du meinst "echo 1 > /proc/sys/net/ipv4/ip_forward" ?
Das ist eingestellt.

Ich hatte gerade das Problem daß obwohl Routing eingeschaltet war mein SuSE 9.0 definitiv nicht geroutet hat. Da hat offenbar eine unkonfigurierte aber installierte SuSEFirewall dazwischengefunkt.

Hab ich mir auch schon gedacht. Hab das mit Webmin und dem SuSeFirewall Modul gemacht. Hab leider nicht soooo viel Ahnung von iptables. Hilt Dir ein

Code:
iptables -L
Chain INPUT (policy DROP)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere           state RELATED,ESTABLISHED
ACCEPT     udp  --  anywhere             255.255.255.255    udp spt:bootps dpt:bootpc
ACCEPT     icmp --  anywhere             anywhere           icmp echo-request
ACCEPT     udp  --  www-proxy.DO1.srv.t-online.de  anywhere           state NEW udp spt:domain dpts:1024:65535
ACCEPT     udp  --  dns03.btx.dtag.de    anywhere           state NEW udp spt:domain dpts:1024:65535
ACCEPT     udp  --  anywhere             anywhere           state ESTABLISHED udp dpts:61000:65095
input_ext  all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere

Chain FORWARD (policy DROP)
target     prot opt source               destination
TCPMSS     tcp  --  anywhere             anywhere           tcp flags:SYN,RST/SYN TCPMSS clamp to PMTU
ACCEPT     all  --  anywhere             anywhere           state RELATED,ESTABLISHED
reject_func  all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere           state NEW,RELATED,ESTABLISHED

Chain input_ext (1 references)
target     prot opt source               destination
reject_func  tcp  --  anywhere             anywhere           tcp dpt:ident flags:SYN,RST,ACK/SYN
LOG        tcp  --  anywhere             anywhere           tcp flags:SYN,RST,ACK/SYN LOG level warning tcp-options ip-options prefix `SuSE-FW-DROP-NEW-CONNECT '
reject_func  all  --  anywhere             anywhere

Chain reject_func (3 references)
target     prot opt source               destination
REJECT     tcp  --  anywhere             anywhere           reject-with tcp-reset
REJECT     udp  --  anywhere             anywhere           reject-with icmp-port-unreachable
REJECT     all  --  anywhere             anywhere           reject-with icmp-proto-unreachable

etwas ?

Falls Verbindungsaufbau auch in der anderen Richtung notwendig sein soll (192.168.1.3 ruft 192.168.0.6) dann nützt uns Masquerading nichts.

Das ist mir klar und wollte ich auch nicht.
 

Martin Breidenbach

Ultimate Guru
Ach den einen Ping hatte ich jetzt ganz übersehen...

Ich denke mal der routet nicht zwischem eth1 und eth2.

Internet geht von allen an eth1 und eth2 angeschlossenen PCs ?

Die Konfiguration von SuSEFirewall steht ja in /etc/sysconfig/SuSEfirewall2.

Was steht denn da in den Variablen drin ?

Ich denke mal FW_QUICKMODE sollte "yes" sein - oder willst Du zwischen internen Netzen filtern ?

Du kannst die Datei ja mal posten (Kommentare weglassen).
 
OP
6

666pinky666

Newbie
Martin Breidenbach schrieb:
Ich denke mal der routet nicht zwischem eth1 und eth2.

genau

Internet geht von allen an eth1 und eth2 angeschlossenen PCs ?

Du kannst die Datei ja mal posten (Kommentare weglassen).

bidde:

Code:
awk -F "#" '$1 != "" {print $1}' /etc/sysconfig/SuSEfirewall2
FW_QUICKMODE="yes"
FW_DEV_EXT="ppp0"
FW_DEV_INT="eth0 eth1 eth2"
FW_DEV_DMZ=""
FW_ROUTE="no"
FW_MASQUERADE="no"
FW_MASQ_DEV="$FW_DEV_EXT"
FW_MASQ_NETS=""
FW_PROTECT_FROM_INTERNAL="no"
FW_AUTOPROTECT_SERVICES="yes"
FW_SERVICES_EXT_TCP=""
FW_SERVICES_EXT_UDP=""
FW_SERVICES_EXT_IP=""
FW_SERVICES_DMZ_TCP=""
FW_SERVICES_DMZ_UDP=""
FW_SERVICES_DMZ_IP=""
FW_SERVICES_INT_TCP=""
FW_SERVICES_INT_UDP=""
FW_SERVICES_INT_IP=""
FW_SERVICES_QUICK_TCP="21 22 10000 pptp smtp"
FW_SERVICES_QUICK_UDP="22 pptp"
FW_SERVICES_QUICK_IP=""
FW_TRUSTED_NETS=""
FW_ALLOW_INCOMING_HIGHPORTS_TCP="no"
FW_ALLOW_INCOMING_HIGHPORTS_UDP="DNS"
FW_SERVICE_AUTODETECT="yes"
FW_SERVICE_DNS="yes"
FW_SERVICE_DHCLIENT="no"
FW_SERVICE_DHCPD="yes"
FW_SERVICE_SQUID="yes"
FW_SERVICE_SAMBA="yes"
FW_FORWARD=""
FW_FORWARD_MASQ=""
FW_REDIRECT=""
FW_LOG_DROP_CRIT="yes"
FW_LOG_DROP_ALL="no"
FW_LOG_ACCEPT_CRIT="yes"
FW_LOG_ACCEPT_ALL="no"
FW_LOG="--log-level warning --log-tcp-options --log-ip-option --log-prefix SuSE-FW"
FW_KERNEL_SECURITY="yes"
FW_STOP_KEEP_ROUTING_STATE="no"
FW_ALLOW_PING_FW="yes"
FW_ALLOW_PING_DMZ="no"
FW_ALLOW_PING_EXT="no"
FW_ALLOW_FW_TRACEROUTE="yes"
FW_ALLOW_FW_SOURCEQUENCH="yes"
FW_ALLOW_FW_BROADCAST="no"
FW_IGNORE_FW_BROADCAST="yes"


ne idee ?


edit:

ach ja. hab da noch was. hab jetzt mal alles firewall mässiges raus geschmissen.
also nach
Code:
SuSefirewall2 stop
echo 1 > /proc/sys/net/ipv4/ip_forward

funzt es. also denke ich haben wir die fw schon mal als übeltäter eingekreist. nur was mus ich einstellen ?
 

nny

Member
dann nützt uns Masquerading nichts.
stimmt, oh mann bin ich mal wieder schlecht *schähm*
aber nat muss er doch trotzdem machen, oder lieg ich da falsch ??
und ich seh kein einziges nat bei den iptables
nny
 

Martin Breidenbach

Ultimate Guru
Die Routing-Konfiguration in der Firewall 'überschreibt' die von der Netzwerkkarte. Ich bin gerade 6 Kilometer von meinem Linux entfernt und kann nicht nachschauen aber

FW_ROUTE="no"

erscheint mir verdächtig.

EDIT:

Da steht in der SuSEfirewall2 Datei drin:

# *Any* routing between interfaces except masquerading requires to set FW_ROUTE
# to "yes" and use FW_FORWARD or FW_ALLOW_CLASS_ROUTING !

nny:
kannst Du auch nicht sehen denn die muß man extra auflisten mit

iptables -t nat -L
 
OP
6

666pinky666

Newbie
Alles klar !!! Jetzt funzet es.

Es war mir nicht klar, daß ich mit FW_FORWARD quasi nochmal die Routen setzen muß. Jetzt ist alles in Butter.

Danke Jungs.
 
Oben