Virtual OS/2 International Consumer Education
VOICE Homepage: http://de.os2voice.org
November 2002

[Inhaltsverzeichnis]
[Vorherige Seite] [Nächste Seite]
[Artikelverzeichnis]

editor@os2voice.org


NetBIOS über TCP/IP, OS/2, Samba, und Linux - eine Suche nach einem gemeinsamen Nenner

Von Michael W. Cocke © November 2002, Übersetzung: Karl Reinberg

Abschnitt 1: Konfiguration von NetBIOS über TCP/IP (TCPBEUI) unter OS/2
Abschnitt 2: Konfiguration von Samba unter Linux

Hinweis: Ein grundsätzliches Verständnis von OS/2 und Linux wird vorausgesetzt.

Bitte beachten Sie: Als ich dieses schrieb, funktionierte das hier beschriebene Verfahren - bis zu 12 Stunden. Scheinbar gibt es da ein Problem mit Samba (ich versuchte es mit Version 2.2.5-prev-1, Ihre Ergebnisse können davon abweichen). Die Verbindung von OS/2 nach Linux funktioniert zeitlich unbeschränkt. Die von Linux nach OS/2 bricht irgendwann über Nacht zusammen. Wenn Sie Linux herunterfahren und neu starten, arbeitet es wieder hervorragend - bis zum nächsten Tag.

Zuletzt habe ich mein Netzwerk auf NFS umgestellt, das gut funktioniert (und wesentlich schneller als Samba). Ich werde das in einem zukünftigen Artikel behandeln.


Abschnitt 1: OS/2 so zu konfigurieren, daß es über ein Netzwerk mit einem Linux-System kommuniziert, ist keine komplizierte Sache - nachdem Sie ungefähr ein Jahr mit dem Lernen über Netzwerke zugebracht haben...

Als erstes müssen Sie OS/2 dahingehend konfigurieren, das Protokoll "NetBIOS über TCP/IP" zu verwenden, welches in der OS/2-Dokumentation gewöhnlich als TCPBEUI bezeichnet wird. Öffnen Sie den Ordner Systemkonfiguration, dann Installieren/Entfernen, wählen Sie OS/2 LAN Dienste Installation/Konfiguration und Angepaßt, dann Datenstation konfigurieren.

Hinweis: Der Grund, warum wir das auf diese Weise tun, anstatt MPTS zu nutzen, ist, daß ich annehme, daß Sie ein bereits vorhandenes LAN mit NetBIOS haben. Es gibt einen Fehler in MPTS (und es gibt ihn, seitdem Warp 4.0 das erste Mal ausgeliefert worden ist), bei dem Ihre IBMLAN.INI-Datei komplett fehlerhaft erzeugt wird, falls Sie bereits ein NetBIOS-LAN betreiben und versuchen, NetBIOS über TCP/IP oder eine weitere Netzwerkkarte hinzuzufügen oder eine beliebige andere Aktion ausführen. Wir tun es auf diese Weise, damit Sie später nicht herausfinden müssen, was eigentlich falsch gelaufen ist. Weitere Informationen über die Probleme, die durch diesen Fehler hervorgerufen werden, und wie man sie manuell korrigiert, siehe Mike's Notebook - unusual networking problems (and solutions) in OS/2 and eCS.

Nach ein paar Fragen (die Antworten dürften in Abhängigkeit von Ihrem System variieren, deshalb überspringe ich sie hier), sollten Sie etwas wie das sehen (Ihre Anzeige wird sich davon unterscheiden):

Dialog Adapter- und Protokollkonfiguration
Abb.1: Dialog Adapter- und Protokollkonfiguration

Beachten Sie bitte ein paar Dinge im oberen Bild: Mein System ist für die Nutzung von TCP/IP (für das Internet und weil NetBIOS über TCP/IP es benötigt), NetBIOS (da ich ein ziemlich großes und komplexes Netzwerk habe und beides, Netbios und Netbios über TCP/IP, nutze, um mit verschiedenen Rechnern zu kommunizieren) und Netbios über TCP/IP (um mit meinem Linux-System zu kommunizieren) eingerichtet.

Brauchen Sie Netbios? Es kommt darauf an. Falls Sie verschiedene OS/2-Rechner haben, die "Warp Peer" nutzen, können Sie entweder NetBIOS oder NetBIOS über TCP/IP für die Kommunikation zwischen ihnen verwenden. Ich bevorzuge NetBIOS zu diesem Zweck, da es einfach zu konfigurieren ist. Falls Sie OS/2- und Windows-Rechner haben, die miteinander kommunizieren sollen, trifft die gleiche Antwort zu. (Im Gegensatz zu hartnäckigen Gerüchten, daß man dazu NetBIOS über TCP/IP benötigt, funktioniert NetBIOS gut, wenn es für Ihre Version von Windows erhältlich ist).

Falls Sie ein sehr großes LAN haben (physisch) benötigen Sie NetBIOS über TCP/IP, einfach da Netbios nicht routingfähig ist (es wird nicht über Router transportiert), wohingegen NetBIOS über TCP/IP dies ist.

Um von OS/2 aus mit Linux zu kommunizieren, benötigen Sie NetBIOS über TCP/IP. Bei mir nutze ich beides, NetBIOS mit einigen Rechnern und NetBIOS über TCP/IP (TCPBEUI) mit anderen. Wenn Sie OS/2 ordentlich konfigurieren, ist klar erkennbar, mit welchem System über welches Protokoll die Verbindung hergestellt wird.

Fügen Sie die passenden Protokolle für Ihre Bedürfnisse hinzu (Ich sagte ja, daß ich annehme, daß Sie bereits ein vorhandenes Netzwerk oder wenigstens OS/2 installiert haben, so daß Sie dies schon durchgemacht haben). Nachdem Sie dies getan haben, doppelklicken Sie auf NetBIOS über TCP/IP Protokoll

NetBIOS über TCP/IP Optionen
Abb.2: NetBIOS über TCP/IP Optionen

Sie können die Grundeinstellung bei Treiberparameter übernehmen, aber die anderen beiden Einstellungen sind obligatorisch. Klicken Sie auf Namensliste, dann Konfigurieren.

Namensliste
Abb.3: Dialog Namensliste

Hier ist der Punkt, ab dem wir auf die Tatsache zählen, daß Sie mit Netzwerken und OS/2 bereits vertraut sind.

Die NetBIOS-Namenspräfix ist einfach der NetBIOS-Name des Rechners. Falls Sie bereits Samba auf Linux konfiguriert habe, ist dies der Hostname. Falls Sie bereits NetBIOS auf OS/2 konfiguriert haben, ist dies ebenfalls der Hostname. Falls Sie bereits Ihre lokale hosts-Datei konfiguriert haben, ist dies die Namenspräfix des Rechners im Hostnamen. Erkennen Sie das Schema? Und die IP-Adresse ist genau das (die IP-Adresse nämlich). So, hier ist jetzt ein wichtiger Punkt. Sie können hier jetzt nicht einfach die Namen der Linux-Systeme eingeben und es funktioniert - Sie müssen ebenso die Information für den Rechner eingeben, den Sie gerade einrichten, und Sie können nicht einfach localhost nutzen. Im Beispiel oben ist opus das Linux- und mwc das lokale System. Ich gebe nicht vor zu verstehen, warum dies so ist (obwohl ich eine Idee habe), aber es wird nicht funktionieren, falls Sie Ihr lokales System weglassen.

Nachdem Sie die Information eingegeben und abgespeichert haben, klicken Sie erst auf Rundsendenachrichtenliste, dann auf Konfigurieren.

Rundsendenachrichtenliste
Abb.4: Dialog Rundsendenachrichtenliste

Geben Sie die IP-Adressen der Rechner ein, mit denen Sie über NetBIOS über TCP/IP kommunzieren möchten, einschließlich der IP-Adresse des lokalen Rechners, den Sie konfigurieren. OK, speichern Sie Ihre Änderungen und betätigen Sie OK. Als nächstes sehen Sie diesen Bildschirm:

Installation und Konfiguration
Abb.5: Dialog Installation und Konfiguration

Wählen Sie Komponente konfigurieren und klicken Sie OK. Wählen Sie Adapter für LAN-Dienste und klicken Sie Konfigurieren.

LAN-Adapter
Abb.6: Dialog LAN-Adapter

Hier ist ein weiteres Stückchen Information, bei dem ich eine Weile brauchte, es herauszufinden: Die oben erwähnten Adapternummern sind keine physischen Adapter - es handelt sich um die logischen Adapternummern, die zuvor zugeordnet wurden.

Adapter- und Protokollkonfiguration Fenster.
Abb.7: Dialog Adapter- und Protokollkonfiguration

Also wirklich, man sollte glauben, ich wäre an die Art und Weise, wie IBM in der Beschreibung zwischen physischen und logischen Adaptern hin- und herspringt, ohne explizit zu erwähnen, wovon sie gerade sprechen, aber ich habe dies doch eine Zeit lang übersehen...

Falls Sie beides, NetBIOS und NetBIOS über TCP/IP, konfiguriert haben, stellen Sie sicher, daß beide entsprechenden Adapter für OS/2 Peer ausgewählt sind. Wenn Sie nur NetBIOS über TCP/IP haben, ist dies der einzige aufgelistete Adapter.

Bei den folgenden "NetBIOS"-Anzeigen bestätigen Sie die Voreinstellungen. Falls Sie daran noch etwas zu ändern haben, können Sie es später tun.

Und jetzt sind wir zurück bei:

FFST Konfigurieren
Abb.8: FFST konfigurieren

Aufgrund eines verwirrenden Fehlers müssen Sie die FFST-Konfiguration jedesmal vornehmen, wenn Sie hier angekommen sind. Machen Sie weiter, ich werde warten. Wenn Sie fertig sind, sind Sie zurück bei:

Installation und Konfiguration
Abb.9: Dialog Installation und Konfiguration

Vergessen Sie nicht, die Änderungen durchzuführen! Nun können Sie weitermachen und alles beenden. Sie müssen das System neu starten, um die Einstellungen wirksam werden zu lassen - ich werde warten. Bitte beachten Sie: Sie sind jetzt noch nicht fertig, also versuchen Sie es nicht, um dann überrascht zu sein, wenn es nicht funktioniert.

Und wir sind zurück.

Nun müssen wir ein paar Dinge in Ihrer TCP/IP-Konfiguration einstellen. Erkennen Sie, warum ich sagte, NetBIOS sei einfacher zu konfigurieren? Ich nehme an, daß Sie bereits TCP/IP für den Zugang zum Internet eingerichtet haben, daher werde ich nur die Teile ansprechen, die Sie für die Nutzung von Netbios über TCP/IP benötigen.

Öffnen Sie das Objekt TCP/IP-Konfiguration (Lokal) im Ordner Systemkonfiguration. Wenn das Notizbuch sich geöffnet hat, klicken Sie auf den Reiter Host-Namen (am oberen Rand), dann auf den Reiter Hosts (am unteren Rand).

TCP/IP-Konfigurationsnotizbuch
Abb.10: TCP/IP-Konfigurationsnotizbuch

Stellen Sie sicher, daß die entsprechenden Einträge für alle Systeme vorhanden sind, die vorher in der Namensliste eingegeben wurden.

Am wichtigsten: Vergewissern Sie sich, daß HOSTS-Liste durchsuchen, bevor Namen-Server abgefragt wird (am unteren Rand) ausgewählt ist!

Speichern Sie die Änderungen und schließen Sie das Notizbuch. Sie müssen das System neu starten, es sei denn, HOSTS-Liste durchsuchen, bevor Namen-Server abgefragt wird war bereits gesetzt.

OK. Falls Sie TCPBEUI für mehrere OS/2 Rechner konfigurieren wollen, wiederholen Sie diese Prozedur für jeden. Wenn Sie fertig sind, sollten Sie ein einfaches NetBIOS-über-TCP/IP-LAN haben, in dem Sie Peer nutzen können.

Lassen Sie mich ein paar ausgesuchte Tips erwähnen:

Falls Sie mehr als ungefähr neun Gemeinsame Ressourcen auf einem System haben, müssen etwas an der IBMLAN.INI drehen. Die Einträge, die etwas Justierung benötigen, sind maxshares und maxconnections, beide im Abschnitt [peer].

Falls Sie eine schnelle Internetverbindung haben (oder selbst, wenn nicht), müssen sie ihre Firewall überprüfen. Stellen Sie sicher, daß die Ports 157-159 blockiert sind!
Diese Ports lassen ihr internes LAN in das Internet "ausbluten". Dies ist eine böse Sache. (Der letzte Satz war ein Beispiel massiver Untertreibung.)

Fehlersuche: Zuerst vergewissern Sie sich, daß svrhidden=no in all Ihren IBMLAN.INI-Dateien steht. Aus unerfindlichen Gründen ist die Voreinstellung yes.

Wenn Sie ein Problem haben, fangen Sie mit net view an. Können Sie alle Ihre NetBIOS-über-TCP/IP-Systeme in Ihrem LAN sehen? Falls nicht, versuchen Sie die entsprechende IP-Adresse für jedes System, welches Sie nicht sehen können, anzupingen. Wenn ping versagt, liegt das Problem irgendwo in der TCP/IP-Konfiguration. Wenn ping funktioniert, aber net view nicht und die Einstellung svrhidden=no korrekt ist, liegt es an der NetBIOS-über-TCP/IP- oder Peer-Konfiguration.

Wenn net view funktioniert, aber Sie Probleme haben, Gemeinsame Ressourcen zu verbinden, überprüfen Sie die Berechtigungen und die beiden o.g. Einstellungen in der Datei IBMLAN.INI.

Sie sollten nun NetBIOS über TCP/IP auf Ihrem (Ihren) OS/2-System(en) eingerichtet haben.


Abschnitt 2 - Samba unter Linux konfigurieren.

Es gibt viele fortgeschrittene Leistungsmerkmale in Samba. Wir werden diese nicht behandeln.

Ich habe nicht vor, an diesem Punkt in die gemeinsame Nutzung von (Netzwerk-) Druckern einzusteigen, da lpr ganz gut funktioniert. Ich werde außerdem all den komplizierteren Sicherheits-Kram überspringen, da die meisten von Ihnen keinen PDC (Primärer Domänen-Controller) nutzen. Falls Sie eins von beiden nutzen, benötigen Sie wahrscheinlich kein "Wie mach ich's?", da Sie ein Netzwerk-Profi sind.

Dies wird die Sicherheit auf der Ebene der gemeinsamen Ressourcen abdecken, wie bei der Windows und OS/2 Warp Nutzung. Jedem gemeinsam genutzten Gerät wird ein Passwort zugeteilt. Um darauf zuzugreifen, benötigen Sie das Passwort. Ziemlich einfach, denke ich.

Zur Erinnerung - wir sprechen in diesem Abschnitt über Linux, daher kann die Groß-/Kleinschreibung von Bedeutung sein.

Als erstes müssen Sie Samba konfigurieren. In /etc/samba müssen Sie eine Datei mit Namen smb.conf erzeugen - hier ist ein Beispiel von einer, die funktioniert (meine Anmerkungen sind kursiv, die Voreinstellungen von der Samba-Einrichtung sind fast (aber nicht komplett) intakt).


#This is the main Samba configuration file. You should read the
#smb.conf(5) manual page in order to understand the options listed
#here. Samba has a huge number of configurable options (perhaps too
#many!) most of which are not shown in this example
#
#Any line which starts with a ; (semi-colon) or a #(hash)
#is a comment and is ignored. In this example we will use a #
#for commentary and a ; for parts of the config file that you
#may wish to enable
#
#NOTE: Whenever you modify this file you should run the command "testparm"
#to check that you have not made any basic syntactic errors.
#
#======================= Global Settings =====================================
[global]
#1. Server Naming Options:
#workgroup = NT-Domain-Name or Workgroup-Name
workgroup = IBMPEERS
Vorausgesetzt, Sie haben die Voreinstellung übernommen, als Sie OS/2 installiert haben.
#netbios name is the name you will see in "Network Neighbourhood",
#but defaults to your hostname
#Be careful with this, the NET USE command seems to be case sensitive
netbios name = opus
#server string is the equivalent of the NT Description field
server string = opus
#3. Logging Options:
#this tells Samba to use a separate log file for each machine
#that connects
log file = /var/log/samba/log.%m

#Put a capping on the size of the log files (in Kb).
max log size = 50

#Set the log (verbosity) level (0 <= log level <= 10)
log level = 0
Ich habe aus ökonomischen Gründen das Logging ausgeschaltet - ich rate dazu, erst einmal einen Wert zwischen 2 und 4 einzustellen.

#4. Security Options:
#This option is important for security. It allows you to restrict
#connections to machines which are on your local network. The
#following example restricts access to two C class networks and
#the "loopback" interface. For more examples of the syntax see
#the smb.conf man page. Do not enable this if (tcp/ip) name resolution does
#not work for all the hosts in your network.
#My local network is on the class C subnet 192.168.1.
#You MUST also list the localhost (127.0.0.1) for this to work.
hosts allow = 192.168.1. 127.

security = share

#Password Level allows matching of _n_ characters of the password for
#all combinations of upper and lower case.
; password level = 8
; username level = 8

Das wird sich anhängig davon ändern, wie schlampig Ihre Anwender darin sind, sich zu erinnern, daß Linux Groß- und Kleinschreibung unterscheidet. Setzen Sie es auf 8, wenn es unmöglich für sie ist.

#You may wish to use password encryption. Please read
#ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba documentation.
#Do not enable this option unless you have read those documents
#Encrypted passwords are required for any use of samba in a Windows NT domain
#The smbpasswd file is only required by a server doing authentication, thus
#members of a domain do not need one.
; encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd

#5. Browser Control and Networking Options:
#Most people will find that this option gives better performance.
#See speed.txt and the manual pages for details
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

#Preferred Master causes Samba to force a local browser election on startup
#and gives it a slightly higher chance of winning the election
preferred master = no
#Windows Internet Name Serving Support Section:
#WINS Support - Tells the NMBD component of Samba to enable it's WINS Server
wins support = no
#============================ Share Definitions ==============================
hosts allow = 192.168.1. 127.
nur Hosts vom lokalem LAN Zugriff erlauben
unix password sync = no
map to guest = never
password level = 0
null passwords = no
allow hosts = 192.168.1.
nur Hosts vom lokalem LAN Zugriff erlauben. Fragen Sie nicht, warum Sie es zweimal auf zwei verschiedenen Arten beschreiben müssen.
os level = 0
preferred master = no
domain master = no
wins support = no
dead time = 0
debug level = 0
keep alive = 60
protocol = LANMAN2
wichtig, wenn Sie Unterstützung für lange Dateinamen wünschen, und die Voreinstellung ist falsch!
short preserve case = yes

Und hier werden die gemeinsamen Ressourcen definiert. Dies ist momentan als offenes Scheunentor konfiguriert. Wenn Sie nur auf Teile des Linux-Dateisystems Zugriff erlauben wollen, passen die Anweisung path weiter unten an. Wenn Sie mehrere gemeinsame Ressourcen einrichten möchten, können Sie auch das tun. Kopieren Sie den ganzen Abschnitt, ändern Sie den Namen public auf einen anderen und passen Sie den Pfad entsprechend an.

[public]
comment = Opus root with read-write access
path = /
guest ok = no
writeable = yes
short preserve case = yes


Und damit wäre das schlimmste vorbei. Sie müssen zusätzlich die Konfiguration für Ihr Linux-TCP/IP vornehmen, und sicherstellen, daß Sie die lokale Host-Auflösungs-Datei (/etc/hosts) mit der richtigen Namensauflösung erstellt haben - genauso, wie Sie es in dem OS/2-TCP/IP-Konfigurationsnotizbuch getan haben, nur ohne die Notizbuch-Oberfläche. Siehe man hosts.

Um die OS/2-Ressourcen automatisch beim Start von Linux einzubinden, erstellen Sie eine Zeile wie diese in /etc/fstab, eine Zeile pro freigegebene Ressource:

//mwc_dt/mwc-c /mnt/mwcdt/c smbfs _netdev,username=username,password=password,fmask=777,dmask=777 0 0

Wobei mwc_dt der Name des Systems ist,
mwc-c die Bezeichnung der Ressource,
/mnt/mwcdt/c der mount point ist, an dem die Ressource eingebunden werden soll,
smbfs der Typ des Dateisystems ist und
_netdev bedeutet, dies nicht zuverbinden, bevor das Netzwerk verfügbar ist.
username und password sollten ein Benutzername und Passwort mit den korrekten Zugriffsrechten für die Ressource sein.
fmask und dmask sind die Datei- und Verzeichnisrechte, die Dateien und Verzeichnissen auf der Ressource zugeordnet werden. Dies brauchen wir hier, da OS/2 keine solche Berechtigungsverwaltung hat wie Linux, und wir daher eine vortäuschen müssen.

Und das war's, in umfangreicher Kürze.

Verschiedene Leute aus sowohl comp.os.os2.misc als auch alt.os.Linux.mandrake haben mir mit einigen dieser Informationen ausgeholfen. Einen besonderen Dank an Richard Steiner und Dave Hough.

Daten und Quellen:

Mike's Notebook - unusual networking problems (and solutions) in OS/2 and eCS: http://www.catherders.com/mwclanprob.shtml


Die Website Mike's Notebook - http://www.catherders.com/mwcexp.shtml wird regelmäß aktualisiert und enthält eine Reihe Artikel und Tips für OS/2-Anwender.

[Artikelverzeichnis]
editor@os2voice.org
[Vorherige Seite] [Inhaltsverzeichnis] [Nächste Seite]
VOICE Homepage: http://de.os2voice.org