Tipps: Knoppix, ISDN-Standleitung und Wlan Ethernet Bridge

Message
Author
spackofatz
Posts: 14
Joined: 22. Jul 2005 9:40

Tipps: Knoppix, ISDN-Standleitung und Wlan Ethernet Bridge

#1 Post by spackofatz »

Liebes Forum,

für mich (Linux-Neuling) geht´s morgen raus auf´s Dorf. Ich soll in der Familie eine Konfiguration einrichten, zu der ich ein, zwei Tipps gebrauchen könnte. Vielleicht kann mir jemand etwas Gedankenfutter darreichen. Der Fall ist nicht so gewöhnlich, aber für einen Sysadmin wahrscheinlich leicht zu konfigurieren (leider bin keiner).

Das Szenario wird sich wie folgt präsentieren: Im Haus gibt es einen Rechner, der via ISDN-Standleitung (tja, nix mit DSL up Dörp) mit dem Internet verbunden ist. Es wurde eine Wireless Ethernet Brige von Belkin gekauft, die mit einem Lan-Kabel an der Ethernet-Karte des ISDN-Rechners hängt.

An der Wireless Bridge lassen sich in einem schmalen Menü IP, Sub und Gateway konfigurieren.

Nun gibt es noch ein Notebook (ebenfalls Knoppix), das über eine WLAN-Karte verfügt, die mittels Ndiswrapper auch schon bereits mit der WLAN Brigde Kontakt aufgenommen hat.

Meine Frage dazu: Wie kann ich das Knoppix auf dem ISDN-Rechner dazu bewegen, dass das Notebook über die Funkverbindung der Bridge mitsurfen darf?

Hat da jemand einen Hinweis ode sogar ein Howto in Sinn, das mir bei der Einrichtung helfen könnte?

klopskuchen
prolinux-forum-admin
Posts: 1444
Joined: 26. Jun 2004 21:18
Contact:

#2 Post by klopskuchen »

Moin!

> ...aber für einen Sysadmin wahrscheinlich leicht zu konfigurieren (leider bin keiner).
Ich auch nicht, versuch es aber trotzdem mal.

Auf dem Laptop muss die IP der Bridge als Defaultgateway eingetragen werden. Die Bridge benötigt die IPs beider angeschlossener Rechner, die NICs müssen hochgefahren und die Routen eingetragen werden. Als Route "IP_Laptop" über "Gateway:IP_Desktop". So jedenfalls läuft es mit einer Linuxbox die selbst als Bridge fungiert. Das Menü deiner Hardwarebridge kenn ich aber nicht. :-/

Wenn der Kontakt Laptop <-> Desktoprechner funzt (vielleicht tuts das eh schon, der "Familie" sei Dank) dann:

Code: Select all

#!/bin/sh

modprobe iptable_nat
iptables -t nat -A POSTROUTING -o ippp0 -j MASQUERADE
echo 1 >/proc/sys/net/ipv4/ip_forward
...ausführen (am besten jeweils beim Booten als Startskript).


Wenn der Desktoprechner eine WLan-Karte hat und das Laptop eine statische IP im selben Subnetz wie der D.rechner, braucht ihr keine Bridge.
Howtos hab ich grad keine parat. Aber unter http://www.oreilly.de/german/freebooks/ ... inhalt.htm wirst du sicher fündig.

MfG, Klopskuchen
When all else fails, read the instructions .

spackofatz
Posts: 14
Joined: 22. Jul 2005 9:40

#3 Post by spackofatz »

Besten Dank klopskuchen,

bin gespannt, ob's klappt. Führe mir heute abend noch "Kapitel 11
IP-Masquerade und die Umsetzung von Netzwerkadressen" zu Gemüte.

Ab morgen sitze ich dann in Imsum hinterm Deich und versuche mein Bestes... iptables ist ja recht komplex und die Befehlskette schon anspruchsvoller, wie ich finde.

So grundsätzlich spielen die Kernel-Versionen keine Rolle bei der Erstellung der Regel? Die meisten Masquerading-Anleitung beschreiben Masquerading für die Kernel-Versionen getrennt.

Gruß
Jens

spackofatz
Posts: 14
Joined: 22. Jul 2005 9:40

#4 Post by spackofatz »

Wir sitzen just an der Konfiguration der Rechner in Imsum. Alle Bestandteile des Heimnetzes (Internet-Rechner, WLAN Brigde, Notebook) können sich untereinander anpingen. Das Script von klopskuchen funzt aber nicht, das heißt, das Notebook kann keinen Ping ins Netz senden. Machen wir was falsch?

Wie können wir uns vorgehen, ob die Fehlerquellen auszuloten?
Würde mich über jeden Tipp, der uns weiterbringt, herzlichen freuen.

Folgende Werte spuckt die Konsoel aus:

Internet-Rechner:

Code: Select all

eth0      Protokoll&#58;Ethernet  Hardware Adresse 00&#58;11&#58;95&#58;22&#58;54&#58;4F
          inet Adresse&#58;192.168.10.1  Bcast&#58;192.168.10.255  Maske&#58;255.255.255.0
          inet6 Adresse&#58; fe80&#58;&#58;211&#58;95ff&#58;fe22&#58;544f/64 Gültigkeitsbereich&#58;Verbindung
          UP BROADCAST RUNNING MULTICAST  MTU&#58;1500  Metric&#58;1
          RX packets&#58;814 errors&#58;0 dropped&#58;0 overruns&#58;0 frame&#58;0
          TX packets&#58;1070 errors&#58;0 dropped&#58;0 overruns&#58;0 carrier&#58;0
          Kollisionen&#58;0 Sendewarteschlangenlänge&#58;1000
          RX bytes&#58;173739 &#40;169.6 KiB&#41;  TX bytes&#58;103567 &#40;101.1 KiB&#41;
          Interrupt&#58;11 Basisadresse&#58;0x4000

ippp0     Protokoll&#58;Punkt-zu-Punkt Verbindung
          inet Adresse&#58;80.228.133.244  P-z-P&#58;212.6.112.141  Maske&#58;255.255.255.255
          UP PUNKTZUPUNKT RUNNING NOARP  MTU&#58;1500  Metric&#58;1
          RX packets&#58;1037 errors&#58;0 dropped&#58;1 overruns&#58;0 frame&#58;0
          TX packets&#58;984 errors&#58;0 dropped&#58;0 overruns&#58;0 carrier&#58;0
          Kollisionen&#58;0 Sendewarteschlangenlänge&#58;30
          RX bytes&#58;593464 &#40;579.5 KiB&#41;  TX bytes&#58;167121 &#40;163.2 KiB&#41;
Notebook:

Code: Select all

Protokoll&#58;Ethernet  Hardware Adresse 00&#58;40&#58;F4&#58;C6&#58;E5&#58;6D
          inet Adresse&#58;192.168.10.3  Bcast&#58;192.168.10.255  Maske&#58;255.255.255.0
          inet6 Adresse&#58; fe80&#58;&#58;240&#58;f4ff&#58;fec6&#58;e56d/64 Gültigkeitsbereich&#58;Verbindung
          UP BROADCAST RUNNING MULTICAST  MTU&#58;1500  Metric&#58;1
          RX packets&#58;614 errors&#58;0 dropped&#58;0 overruns&#58;0 frame&#58;0
          TX packets&#58;233 errors&#58;0 dropped&#58;0 overruns&#58;0 carrier&#58;0
          Kollisionen&#58;0 Sendewarteschlangenlänge&#58;1000
          RX bytes&#58;32396 &#40;31.6 KiB&#41;  TX bytes&#58;20890 &#40;20.4 KiB&#41;
         Speicher&#58;20820000-20821fff
WLAN-Bridge

Code: Select all

  
    LAN Settings
    Ethernet MAC  00&#58;30&#58;BD&#58;F8&#58;EA&#58;5D
    Bridge Name  willi2
    IP Configuration  Static
    IP Address  192.168.10.2
    Subnet Mask  255.255.255.0
    Gateway Address  192.168.10.1
         
 WLAN Settings
    WLAN MAC  00&#58;30&#58;BD&#58;F8&#58;90&#58;B2
    SSID  belkin54 
    Operating Mode  Ad Hoc
    Encryption  Off&#58;

Gruß
Jens

klopskuchen
prolinux-forum-admin
Posts: 1444
Joined: 26. Jun 2004 21:18
Contact:

#5 Post by klopskuchen »

> Alle Bestandteile des Heimnetzes (Internet-Rechner, WLAN Brigde, Notebook) können sich untereinander anpingen.

Das Schleppi ereicht also den Desktoprechner (<- auf diesem muss das script ausgeführt werden)?

Poste mal die Routingtabellen der Geräte.

MfG, Klopskuchen
When all else fails, read the instructions .

spackofatz
Posts: 14
Joined: 22. Jul 2005 9:40

#6 Post by spackofatz »

Hi klopskuchen,

alles molto bene. Wir mussten dem Notebook noch eine gültige DNS verabreichen. Das fehlte. Es hat also mit Deinem Script geklappt. Super! Ich habe zwar nicht genau verstanden, was wir da machen. Aber es hat funktioniert. Ist es möglich, die Befehlsfolge zu speichern? Vielleicht als Script fr die Shell? Das würde hier draußen einiges einfacher machen.

Gruß
Jens

klopskuchen
prolinux-forum-admin
Posts: 1444
Joined: 26. Jun 2004 21:18
Contact:

#7 Post by klopskuchen »

> Ist es möglich, die Befehlsfolge zu speichern?
Dafür war es gedacht. Schreib es in eine Datei und speicher die in dem Verzeichnis das die Bootscripte enthält ab. Ausführbar machen musst du sie noch:
chmod +x Datei_name
Die Datei sollte die Endung .sh bekommen. Das ist zwar nicht unbedingt nötig da die erste Zeile den Interpreter enthält (#!/bin/sh), gehört aber "zum guten Ton".
Auch wenn es eine Schweinerei ist, ich hab gerade kein Knoppix zur Hand. Und im Knoppix-irc schlafen alle oder wollen nicht. :-/
AFAIK sitzen die Bootscripte unter /etc/inet.d/. Musst mal suchen.
In besagtem Verzeichnis sollte sich auch eine Datei wie rc.local (Name kann leicht abweichen) befinden. In diese muss der Pfad zu dem Script eingetragen werden. Somit wird das Script beim Booten des Rechners mit ausgeführt.

MfG, Klopskuchen
When all else fails, read the instructions .

hansi
Posts: 14
Joined: 31. Jul 2005 15:19

#8 Post by hansi »

Hallo
Endlich konnte ich meinen Notebook , dank eurer Hilfe wie beschrieben einrichten und über ISDN ins Internet bringen.
Klopskuchen schrieb:
AFAIK sitzen die Bootscripte unter /etc/inet.d/. Musst mal suchen.
In besagtem Verzeichnis sollte sich auch eine Datei wie rc.local (Name kann leicht abweichen) befinden. In diese muss der Pfad zu dem Script eingetragen werden. Somit wird das Script beim Booten des Rechners mit ausgeführt.
Ich nutze Knoppix 3.9 auf Platte. In /etc/init.d gibt es eine rc und eine rcs. In welche der beiden muß der Pfad eingetragen werden?

#! /bin/sh
#
# rc This file is responsible for starting/stopping
# services when the runlevel changes.
#
# Optimization feature:
# A startup script is _not_ run when the service was
# running in the previous runlevel and it wasn't stopped
# in the runlevel transition (most Debian services don't
# have K?? links in rc{1,2,3,4,5} )
#
# Author: Miquel van Smoorenburg <miquels@cistron.nl>
# Bruce Perens <Bruce@Pixar.com>
#
# Version: @(#)rc 2.78 07-Nov-1999 miquels@cistron.nl
#

# Un-comment the following for debugging.
# debug=echo

#
# Start script or program.
#
startup() {
case "$1" in
*.sh)
$debug sh "$@"
;;
*)
$debug "$@"
;;
esac
}

# Ignore CTRL-C only in this shell, so we can interrupt subprocesses.
trap ":" INT QUIT TSTP

# Set onlcr to avoid staircase effect.
stty onlcr 0>&1

# Now find out what the current and what the previous runlevel are.

runlevel=$RUNLEVEL
# Get first argument. Set new runlevel to this argument.
[ "$1" != "" ] && runlevel=$1
if [ "$runlevel" = "" ]
then
echo "Usage: $0 <runlevel>" >&2
exit 1
fi
previous=$PREVLEVEL
[ "$previous" = "" ] && previous=N

export runlevel previous

# Is there an rc directory for this new runlevel?
if [ -d /etc/rc$runlevel.d ]
then
# First, run the KILL scripts.
if [ $previous != N ]
then
for i in /etc/rc$runlevel.d/K[0-9][0-9]*
do
# Check if the script is there.
[ ! -f $i ] && continue

# Stop the service.
startup $i stop
done
fi
# Now run the START scripts for this runlevel.
for i in /etc/rc$runlevel.d/S*
do
[ ! -f $i ] && continue

if [ $previous != N ]
then
#
# Find start script in previous runlevel and
# stop script in this runlevel.
#
suffix=${i#/etc/rc$runlevel.d/S[0-9][0-9]}
stop=/etc/rc$runlevel.d/K[0-9][0-9]$suffix
previous_start=/etc/rc$previous.d/S[0-9][0-9]$suffix
#
# If there is a start script in the previous level
# and _no_ stop script in this level, we don't
# have to re-start the service.
#
[ -f $previous_start ] && [ ! -f $stop ] && continue
fi
case "$runlevel" in
0|6)
startup $i stop
;;
*)
startup $i start
;;
esac
done
fi
# eof /etc/init.d/rc
root@0[init.d]# cat /etc/init.d/rcS
#! /bin/sh
#
# rcS Call all S??* scripts in /etc/rcS.d in
# numerical/alphabetical order.
#
# Version: @(#)/etc/init.d/rcS 2.76 19-Apr-1999 miquels@cistron.nl
#

PATH=/sbin:/bin:/usr/sbin:/usr/bin
runlevel=S
prevlevel=N
umask 022
export PATH runlevel prevlevel

#
# See if system needs to be setup. This is ONLY meant to
# be used for the initial setup after a fresh installation!
#
if [ -x /sbin/unconfigured.sh ]
then
/sbin/unconfigured.sh
fi

#
# Source defaults.
#
. /etc/default/rcS
export VERBOSE

#
# Trap CTRL-C &c only in this shell so we can interrupt subprocesses.
#
trap ":" INT QUIT TSTP

#
# Call all parts in order.
#
for i in /etc/rcS.d/S??*
do
# Ignore dangling symlinks for now.
[ ! -f "$i" ] && continue

case "$i" in
*.sh)
# Source shell script for speed.
(
trap - INT QUIT TSTP
set start
. $i
)
;;
*)
# No sh extension, so fork subprocess.
$i start
;;
esac
done

#
# For compatibility, run the files in /etc/rc.boot too.
#
[ -d /etc/rc.boot ] && run-parts /etc/rc.boot

#
# Finish setup if needed. The comment above about
# /sbin/unconfigured.sh applies here as well!
#
if [ -x /sbin/setup.sh ]
then
/sbin/setup.sh
fi

root@0[init.d]#
Gruß Hansi

klopskuchen
prolinux-forum-admin
Posts: 1444
Joined: 26. Jun 2004 21:18
Contact:

#9 Post by klopskuchen »

Hallo hansi!

Ich hab gerade in mein nun wieder vorhandenes Knoppix reingeguckt. Füge die Zeilen:

Code: Select all

modprobe iptable_nat
iptables -t nat -A POSTROUTING -o ippp0 -j MASQUERADE
echo 1 >/proc/sys/net/ipv4/ip_forward 
in die Datei /etc/init.d/networking unterhalb folgender Zeile ein:

Code: Select all

PATH=/usr/local/sbin&#58;/usr ... und so weiter
Funktioniert so?

MfG, Klopskuchen
When all else fails, read the instructions .

hansi
Posts: 14
Joined: 31. Jul 2005 15:19

#10 Post by hansi »

Hallo klobstock
Habe das mal ausprobiert:
Code:

modprobe iptable_nat
iptables -t nat -A POSTROUTING -o ippp0 -j MASQUERADE
echo 1 >/proc/sys/net/ipv4/ip_forward


in die Datei /etc/init.d/networking unterhalb folgender Zeile ein:

Code:
PATH=/usr/local/sbin:/usr ... und so weiter

geht nicht. kann die Bridge+Pc nicht pingen. Nehme an das Pakete gesendet werden ,aber keine zurück kommen. Die Karte blinkt.
Gruß hansi

klopskuchen
prolinux-forum-admin
Posts: 1444
Joined: 26. Jun 2004 21:18
Contact:

#11 Post by klopskuchen »

> Hallo klobstock
Mein Nickname ist zwar selten dämlich aber IMO einprägsam. ;)

> kann die Bridge+Pc nicht pingen.
Das liegt am Schlepptop. Wenn du auf dem Laptop in eine Konsole (als root) eintippst: route -n was steht denn da?
Das Ergebnis des Befehls ifconfig kannst du sicherheitshalber auch gleich mitschicken.

ps. Wenn ich mir wochentags für Antworten lange Zeit lasse liegt das an meinem geschätzten Chef. Er mag es halt wenn unsereins lange und viel arbeitet. :roll:

MfG, Klopskuchen
When all else fails, read the instructions .

hansi
Posts: 14
Joined: 31. Jul 2005 15:19

#12 Post by hansi »

Hallo Klopskuchen
in die Datei /etc/init.d/networking unterhalb folgender Zeile ein:
Code:
PATH=/usr/local/sbin:/usr ... und so weiter

in die Datei /etc/init.d/networking unterhalb folgender Zeile ein:

Code:
PATH=/usr/local/sbin:/usr ... und so weiter Habe heute das noch einmal ausgeführt. Seltsammerweise hat es nun geklappt. Das vereinfacht das Hochfahren des Pc.
Vielen Dank für die Hilfe.

Möchte den Startvorgang noch weiter vereinfachen. Muß nach dem Pc-start immer die Netzwerk Karte abarbeiten, die Werte sind dort zwar fest vorhanden
aber ohne Bestätigung gehts nicht. Mit ifup eth0 klappt

Das gleiche auf dem Schlepptop, nur dort muß noch modprobe ndiswrapper ausgeführt werden.

Hast Du da noch einen Tipp wie man das mit einem Skrip vereinfachen kann?
Gruß Hansi

:roll:

klopskuchen
prolinux-forum-admin
Posts: 1444
Joined: 26. Jun 2004 21:18
Contact:

#13 Post by klopskuchen »

N'abnd hansi!

> Das gleiche auf dem Schlepptop, nur dort muß noch modprobe ndiswrapper ausgeführt werden.

Im Schleppi Editor öffnen und eintippern:

Code: Select all

#!/bin/sh

/sbin/ifup eth0
/sbin/modprobe ndiswrapper
dann abspeichern als irgend_ein_name.sh unter /etc/rc3.d/ und ausführbar machen:
chmod +x /etc/rc3.d/irgend_ein_name.sh.

Eben genanntes auch auf dem Pc ausführen mit einem kleinen Unterschied: die Zeile mit dem ndiswrapper weglassen.

Das Ganze hab ich mir jetzt anhand eines uralten Knoppix "zurechtgedacht", mit mangelnder Übung im system V startup (bsd rockt ;) ). Und der Hoffnung richtig damit zu liegen, dass runlevel 3 das erste mit Netmodus ist. Falls sich also ein Debianer, der im besten Falle ein aktuelles Knoppix parat hat, hier her verirrt: bitte verifizieren. :P

MfG, Klopskuchen
When all else fails, read the instructions .

hansi
Posts: 14
Joined: 31. Jul 2005 15:19

#14 Post by hansi »

Hi klopskuchen
Das letzte Skrip klappt nicht.

-rwxr-xr-x 1 root root 31 2005-08-05 11:54 test1.sh
root@1[rc3.d]# cat /etc/rc3.d/test1.sh
#!/bin/sh

/sbin/ifup eth0

[~]$ ifconfig
eth0 Protokoll:Ethernet Hardware Adresse 00:11:95:22:54:4F
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:1 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX bytes:0 (0.0 b) TX bytes:342 (342.0 b)
Interrupt:11 Basisadresse:0x4000

lo Protokoll:Lokale Schleife
inet Adresse:127.0.0.1 Maske:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX bytes:400 (400.0 b) TX bytes:400 (400.0 b)

knoppix@0[~]$
knoppix@0[~]$ route
Kernel IP Routentabelle
Ziel Router Genmask Flags Metric Ref Use Iface
knoppix@0[~]$

Das gleiche auch auf dem Schleppi. Hatte dort ifup wlan0 eingeschrieben.
Gruß hansi

klopskuchen
prolinux-forum-admin
Posts: 1444
Joined: 26. Jun 2004 21:18
Contact:

#15 Post by klopskuchen »

Hi,

die Netzwerkkarte hat in deinem Fall keine Adresse zugewiesen bekommen, einen Routingeintrag gibt es auch nicht.
Ich besorge mir jetzt erstmal eine aktuelle Version von Knoppix. Je nach Zeit werd ich mir das Samstag oder Sonntag angucken und vernünftich "zurechtbauen". Theoretisch könnte man jetzt weiterfrickeln, es ist aber besser die Sache sauber ins Startup einzubinden. Sonst gibt es bei jeder weiteren Änderung (externe Programme usw.) Komplikationen. Also schieben wir meine bisherigen Lösungsvorschläge/ miesen Basteleien besser nach /dev/null.

Bis dann, Klopskuchen
When all else fails, read the instructions .

Post Reply