Debian-Rechner als Gateway-Bridge verwenden

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
PCFreund
Beiträge: 27
Registriert: 29.12.2010 21:37:24
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 88.198.103.155
Kontaktdaten:

Debian-Rechner als Gateway-Bridge verwenden

Beitrag von PCFreund » 23.10.2011 09:46:01

Hallo,

ich habe folgendes Vorhaben:

In meinem Netzwerk gibt es 4 PC's, einen Router (der per aDSL mit dem Internet verbunden ist) und einen Server.
Zurzeit ist die Konfiguration wie folgt:

(Konfiguration 1)
[Router] -- (WLan) --> [PC1]
[Router] -- (WLan) --> [PC2]
[Router] -- (WLan) --> [PC3]
[Router] -- (WLan) --> [PC4]
Router ist hierbei immer der DHCP-Server.
Router ist hierbei auch immer das Tor ins Internet.

Da aber der Router ab 2 gleichzeitigen WLan-Verbindungen nicht außer nurnoch Paketverlust hergibt, möchte ich nun folgende Konfiguration machen:

(Konfiguration 2)
[Router] -- (WLan) --> [Bridge]
[Bridge] -- (Lan) --> [Switch]
[Switch] -- (Lan) --> [PC1]
[Switch] -- (Lan) --> [PC2]
[Switch] -- (Lan) --> [PC3]
[Switch] -- (Lan) --> [PC4]
Das Interne Netzwerk (Bridge:eth0 / Switch / PC's) soll die IP-Adressen 10.0.10.XXX bekommen. Das "externe" Netzwerk (Bridge:wlan0 / WLan / Router) soll die IP-Adressen 10.0.0.XXX bekommen, wobei 10.0.0.138 die Router-IP ist.

Vorweg auch gleich 2 mögliche DHCP-Konfigurationen (IP-Adresse des Routers bleibt immer gleich)

(DHCP-Konfiguration 1)
IP-Adresse Beginn: 10.0.0.1
IP-Adresse Ende: 10.0.0.254
IP-Adresse des Routers: 10.0.0.138
IP-Adresse der Bridge auf eth0: 10.0.0.1
IP-Adresse der Bridge auf wlan0: 10.0.0.1
Broadcast: 10.0.0.255

(DHCP-Konfiguration 1)
IP-Adresse Beginn: 10.0.10.1
IP-Adresse Ende: 10.0.10.254
IP-Adresse des Routers: 10.0.0.138
IP-Adresse der Bridge auf eth0: 10.0.10.1
IP-Adresse der Bridge auf wlan0: 10.0.0.1
Broadcast: 10.0.10.255
(Hier benötige ich eine Traffic-Weiterleitung bzw. die PC's welche auf eth0 angeschlossen sind, können nicht mit dem Router kommunizieren.)

Bridge soll den Server darstellen, welcher wie folgt konfiguriert sein sollte:
wlan0 bezieht KEINE IP-Adressen des DHCP-Servers vom Router
eth0 dient als DHCP-Server für die PC's im Netzwerk.
Verbindungen von eth0 sollen auf wlan0 geroutet werden.
Verbindungen von wlan0 sollen in den Server gehen.

Nun bin ich schon soweit, dass der DHCP-Server IP-Adressen vergibt, und diese auch funktionieren.
DHCP-Konfiguration 1 funktioniert nicht, da ich ansonsten nicht mehr auf den Server zugreifen kann.
DHCP-Konfiguration 2 funktioniert zwar, komme aber wie gesagt dann nicht mehr ins Internet weil es ein anderes Subnetz(?) ist...

Wie mache ich das nun bzw. welche Programme + Konfiguration der Programme benötige ich, damit ich mein Vorhaben so realisieren kann.

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Debian-Rechner als Gateway-Bridge verwenden

Beitrag von Cae » 23.10.2011 11:00:48

PCFreund hat geschrieben:Hier benötige ich eine Traffic-Weiterleitung bzw. die PC's welche auf eth0 angeschlossen sind, können nicht mit dem Router kommunizieren.
Das klingt so, als würde der Server nicht routen. Tut er dies? (Dies gilt nur bis zum nächsten Neustart, verwende /etc/network/interfaces für Dauerhaftigkeit)

Code: Alles auswählen

$ cat /proc/sys/net/ipv4/ip_forward
# echo 1 > /proc/sys/net/ipv4/ip_forward # zum Einschalten
Ansonsten grob skizziert: Debianisc-dhcp-server auf eth0 binden (für die PCs, /etc/dhcp/dhcpd.conf), Debiandhcp-client auf wlan0 lauschen lassen (um vom Router IP, etc. zu bekommen); wobei du aufpassen solltest, dass der Server für sich selbst nicht seinen eigenen dhcpd verwendet. Wobei man auch über eine statische Adresse nachdenken sollte.
Der dhcpd und eth0 werden auf das 10.0.10.0/24-er Netz gelegt. wlan0 wird automatisch bezogen... tjo, das war's schon. Vielleicht macht auch ein NAT (Network Address Translation) Sinn.

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

PCFreund
Beiträge: 27
Registriert: 29.12.2010 21:37:24
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 88.198.103.155
Kontaktdaten:

Re: Debian-Rechner als Gateway-Bridge verwenden

Beitrag von PCFreund » 23.10.2011 11:13:40

So sieht zurzeit meine /etc/dhcp/dhcpd.conf aus:

Code: Alles auswählen

ddns-update-style none;
option domain-name "lan";
option domain-name-servers 10.0.10.138;
default-lease-time 15778463;
max-lease-time 31556926;
authoritative;
log-facility local7;
subnet 10.0.10.0 netmask 255.255.255.0 {
        range 10.0.10.1 10.0.10.254;
        option routers 10.0.0.138;
        option broadcast-address 10.0.10.255;
}
Ich bekomme auch wunderschön eine IP-Adresse zugewiesen, aber ich kann nicht auf 10.0.0.138 um dort z.B. die Einstellungen vom Router zu ändern.
ifconfig

Code: Alles auswählen

eth0      Link encap:Ethernet  HWaddr 00:13:8f:90:07:06  
          inet addr:10.0.10.138  Bcast:10.0.10.255  Mask:255.255.255.0
          inet6 addr: fe80::213:8fff:fe90:706/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:27252 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13868 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:11704429 (11.1 MiB)  TX bytes:1852498 (1.7 MiB)
          Interrupt:23 Base address:0xe800 

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:1493 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1493 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:273607 (267.1 KiB)  TX bytes:273607 (267.1 KiB)

wlan0     Link encap:Ethernet  HWaddr 00:0f:b5:be:26:02  
          inet addr:10.0.0.15  Bcast:10.0.0.255  Mask:255.255.255.0
          inet6 addr: fe80::20f:b5ff:febe:2602/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:47434 errors:0 dropped:0 overruns:0 frame:0
          TX packets:78652 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:6688364 (6.3 MiB)  TX bytes:104446939 (99.6 MiB)
Außerdem:

Code: Alles auswählen

root@gateway:~# cat /proc/sys/net/ipv4/ip_forward
1

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Debian-Rechner als Gateway-Bridge verwenden

Beitrag von Cae » 23.10.2011 11:42:17

Code: Alles auswählen

# route -n
$ ping -r -c5 10.0.0.138
$ traceroute 10.0.0.138
Macht es einen Unterschied, ob du die Befehle von der Bridge oder von einem Client-PC absetzt?

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

PCFreund
Beiträge: 27
Registriert: 29.12.2010 21:37:24
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 88.198.103.155
Kontaktdaten:

Re: Debian-Rechner als Gateway-Bridge verwenden

Beitrag von PCFreund » 23.10.2011 11:50:14

Von der Bridge aus, die direkt mit dem Router/Gateway verbunden ist:

Code: Alles auswählen

root@gateway:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 wlan0
10.0.10.0       0.0.0.0         255.255.255.0   U     0      0        0 eth0
0.0.0.0         10.0.0.138      0.0.0.0         UG    0      0        0 wlan0
root@gateway:~# ping -r -c5 10.0.0.138
PING 10.0.0.138 (10.0.0.138) 56(84) bytes of data.
64 bytes from 10.0.0.138: icmp_req=1 ttl=64 time=3.75 ms
64 bytes from 10.0.0.138: icmp_req=2 ttl=64 time=1.74 ms
64 bytes from 10.0.0.138: icmp_req=3 ttl=64 time=1.79 ms
64 bytes from 10.0.0.138: icmp_req=4 ttl=64 time=1.67 ms
^C
--- 10.0.0.138 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 1.679/2.243/3.759/0.877 ms
root@gateway:~# traceroute 10.0.0.138
traceroute to 10.0.0.138 (10.0.0.138), 30 hops max, 60 byte packets
 1  * * *
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * * *
17  * * *
18  * * *
19  * * *
20  * * *
21  * * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *
root@gateway:~# 
Vom PC aus, der über die Bridge mit dem Router/Gateway verbunden ist:

Code: Alles auswählen

root@pcfreund:~# route -n
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
10.0.0.138      0.0.0.0         255.255.255.255 UH    0      0        0 eth0
10.0.10.0       0.0.0.0         255.255.255.0   U     1      0        0 eth0
0.0.0.0         10.0.0.138      0.0.0.0         UG    0      0        0 eth0
root@pcfreund:~# ping -r -c5 10.0.0.138
PING 10.0.0.138 (10.0.0.138) 56(84) bytes of data.
From 10.0.10.1 icmp_seq=2 Destination Host Unreachable
From 10.0.10.1 icmp_seq=3 Destination Host Unreachable
^C
--- 10.0.0.138 ping statistics ---
3 packets transmitted, 0 received, +2 errors, 100% packet loss, time 1999ms
pipe 2
root@pcfreund:~# traceroute 10.0.0.138
traceroute to 10.0.0.138 (10.0.0.138), 30 hops max, 60 byte packets
 1  pcfreund.local (10.0.10.1)  985.043 ms !H  985.042 ms !H  985.039 ms !H
root@pcfreund:~# 
Vom PC aus, der direkt mit Router/Gateway verbunden ist:

Code: Alles auswählen

root@pcfreund:~# route -n
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
10.0.0.0        0.0.0.0         255.255.255.0   U     1      0        0 eth0
0.0.0.0         10.0.0.138      0.0.0.0         UG    0      0        0 eth0
root@pcfreund:~# ping -r -c5 10.0.0.138
PING 10.0.0.138 (10.0.0.138) 56(84) bytes of data.
64 bytes from 10.0.0.138: icmp_req=1 ttl=64 time=1.01 ms
64 bytes from 10.0.0.138: icmp_req=2 ttl=64 time=0.653 ms
64 bytes from 10.0.0.138: icmp_req=3 ttl=64 time=0.649 ms
64 bytes from 10.0.0.138: icmp_req=4 ttl=64 time=0.638 ms
^C
--- 10.0.0.138 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2999ms
rtt min/avg/max/mdev = 0.638/0.739/1.019/0.164 ms
root@pcfreund:~# traceroute 10.0.0.138
traceroute to 10.0.0.138 (10.0.0.138), 30 hops max, 60 byte packets
 1  * * *
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * * *
17  * * *
18  * * *
19  * * *
20  * * *
21  * * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *
root@pcfreund:~# 

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Debian-Rechner als Gateway-Bridge verwenden

Beitrag von Cae » 23.10.2011 12:37:29

PCFreund hat geschrieben:

Code: Alles auswählen

root@gateway:~# ping -r -c5 10.0.0.138
PING 10.0.0.138 (10.0.0.138) 56(84) bytes of data.
64 bytes from 10.0.0.138: icmp_req=1 ttl=64 time=3.75 ms
64 bytes from 10.0.0.138: icmp_req=2 ttl=64 time=1.74 ms
--schnipp
root@gateway:~# traceroute 10.0.0.138
traceroute to 10.0.0.138 (10.0.0.138), 30 hops max, 60 byte packets
 1  * * *
Pingen geht, traceroute bekommt aber nix durch? Das ist merkwürdig. Ebenso die Routingtabellen:
PCFreund hat geschrieben:Vom PC aus, der über die Bridge mit dem Router/Gateway verbunden ist:

Code: Alles auswählen

root@pcfreund:~# route -n
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
10.0.0.138      0.0.0.0         255.255.255.255 UH    0      0        0 eth0
10.0.10.0       0.0.0.0         255.255.255.0   U     1      0        0 eth0
0.0.0.0         10.0.0.138      0.0.0.0         UG    0      0        0 eth0
Woher kommt da der erste Eintrag? Zeile zwei ist logisch, das ist sein eigenes Netz. Und Zeile drei is der Standardgateway, der aber auf die IP der Bridge (10.0.10.1) zeigen sollte.

Der letzte Rechner, der direkt am Gateway hängt, ist richtig eingestellt. Aber er bekommt keine traceroute durch => Firewall im Gateway selbst? Es stört jedenfalls nicht.

Schau mal nach, was die Routingtabelle durcheinander gebracht haben könnte (pgrep dhclient) und stelle sie nötigenfalls per Reboot (funktioniert vllt) oder dem Befehl route richtig.

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

PCFreund
Beiträge: 27
Registriert: 29.12.2010 21:37:24
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 88.198.103.155
Kontaktdaten:

Re: Debian-Rechner als Gateway-Bridge verwenden

Beitrag von PCFreund » 23.10.2011 12:52:38

Traceroute hat mit dem Router/Gateway noch nie richtig funktioniert.

Wenn ich in der /etc/dhcp/dhcpd.conf die Zeile

Code: Alles auswählen

option routers 10.0.0.138;
auskommentiere/entferne, verschwindet der erste und der letzte Eintrag in route -n vom Client (verbundet mit der Bridge):

Code: Alles auswählen

root@pcfreund:~# route -n
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
10.0.10.0       0.0.0.0         255.255.255.0   U     1      0        0 eth0
root@pcfreund:~#

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Debian-Rechner als Gateway-Bridge verwenden

Beitrag von Cae » 23.10.2011 13:25:48

PCFreund hat geschrieben:Traceroute hat mit dem Router/Gateway noch nie richtig funktioniert.
Okay. Alle Klarheiten beseitigt. :mrgreen:
PCFreund hat geschrieben:Wenn ich in der /etc/dhcp/dhcpd.conf die Zeile

Code: Alles auswählen

option routers 10.0.0.138;
auskommentiere/entferne, verschwindet der erste und der letzte Eintrag in route -n vom Client (verbundet mit der Bridge)
Aha, und was passiert, wenn du sie auf

Code: Alles auswählen

option routers 10.0.10.1;
abänderst? Wenn ich das richtig verstanden habe, wird diese IP bei den Clients als Standardgateway eingetragen.

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

PCFreund
Beiträge: 27
Registriert: 29.12.2010 21:37:24
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 88.198.103.155
Kontaktdaten:

Re: Debian-Rechner als Gateway-Bridge verwenden

Beitrag von PCFreund » 23.10.2011 13:54:05

Funktioniert auch nicht...

Code: Alles auswählen

root@pcfreund:~# ping 10.0.0.138
PING 10.0.0.138 (10.0.0.138) 56(84) bytes of data.
^C
--- 10.0.0.138 ping statistics ---
25 packets transmitted, 0 received, 100% packet loss, time 24192ms

root@pcfreund:~# ping -r -c5 10.0.0.138
PING 10.0.0.138 (10.0.0.138) 56(84) bytes of data.
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
^C
--- 10.0.0.138 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3024ms

root@pcfreund:~# route -n
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
10.0.10.0       0.0.0.0         255.255.255.0   U     1      0        0 eth0
0.0.0.0         10.0.10.138     0.0.0.0         UG    0      0        0 eth0
root@pcfreund:~#

PCFreund
Beiträge: 27
Registriert: 29.12.2010 21:37:24
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 88.198.103.155
Kontaktdaten:

Re: Debian-Rechner als Gateway-Bridge verwenden

Beitrag von PCFreund » 23.10.2011 14:04:15

Also, ich habe den Fehler/die Lösung gefunden:
Einfach ein

Code: Alles auswählen

iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
ausführen und es funktioniert. So, jetzt erstmal schauen, wie ich das alles weitermache.
Trotzdem vielen vielen vielen Dank an Dich, dass du mir soweit geholfen hast.

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Debian-Rechner als Gateway-Bridge verwenden

Beitrag von Cae » 23.10.2011 15:43:38

Ja, NAT ist natürlich auch eine Lösung, die allerdings mit dem Nachteil daherkommt, dass die Clientseite des NATs keine Serverdienste anbieten kann. Es sei denn, man schaltet extra Ports um... deswegen hatte ich es in meinem ersten Post auch nur als möglicherweise sinnvoll erwähnt. :)

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

PCFreund
Beiträge: 27
Registriert: 29.12.2010 21:37:24
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 88.198.103.155
Kontaktdaten:

Re: Debian-Rechner als Gateway-Bridge verwenden

Beitrag von PCFreund » 23.10.2011 16:40:30

Ja, es ist ja nur notwendig, dass die PCs ins Internet können. Für spezielle Server-Dienste verwende ich die Bridge, da diese sowieso genug Power hat :)

Antworten