NetBIOS via TCP/IP

> OS/2 net index <

NETBIOS versus TCP/IP

NetBIOS, routing en NetBIOS via TCP/IP

IBM OS/2 NETBIOS via TCP/IP installeren

Met de samba server verbinden

Host bestanden onder Windows

De MPTS bug

Veel voorkomende foutmeldingen



NETBIOS versus TCP/IP

> Top <

NetBIOS over TCP/IP (TCPBEUI) is een manier om computers via 32 bits IP adressen over poort 139 te bereiken. Het koppelen (binding) van het NetBIOS protocol aan het TCP/IP protocol heeft de volgende voordelen:

  1. Met Samba kunt u met een Linux/UNIX server uw bestanden en printers delen. UNIX spreekt het Server Message Block alleen via TCP/IP.

  2. OS/2 kan als client optreden van een NT server.

  3. De tussenliggende routers hoeven slechts TCP/IP te verstaan.

  4. Via TCP/IP kan het NetBIOS dus ook computers via het internet benaderen (en omgekeerd).

Het laatste heeft als nadeel dat anderen gemakkelijker uw netwerk kunnen binnendringen. Immers, waar het oorspronkelijke NetBIOS protocol zich tot een ethernet Local area Netwerk (LAN, werkgroep) beperkte, is de reikwijdte van NetBIOS via TCP/IP wereldwijd. Ze wordt slechts beperkt door de instellingen van routers en firewalls.

Het gevolg kan zijn dat de bronnen op uw harde schijf in de netwerkomgeving van een hacker/cracker ergens op het internet kunnen verschijnen. Hij hoeft slechts een reeks IP adressen op het netwerk van een ISP te scannen om te weten waar de gaten kunnen zijn (dit valt onder abuse).

Het voorbeeld hiernaast toont een poortscan van eComStation met o.a. NFS, NetBIOS, Secure Shell en LPD. De scan is op een IP adres dat nooit op het internet is te zien, maar als ik zonder firewall met het internet verbinden was zou poort 139 op mijn internet IP adres voor iedereen zichtbaar zijn.

Met name onder Windows staat poort 139 vaak wijd open. Zonder dat de Windows gebruiker het weet. Deze poort verschaft de toegang tot de gedeelde NetBIOS bronnen via het internet. Gelukkig zullen deze servers met Injoys Netwerk Adres Vertaling of een router firewall niet vanaf het Internet te bereiken zijn (zet dan wel de NAT van de Injoy PC aan!).

U kunt uw openstaande poorten controleren met de poortscanner van Steve Gibson: Shields UP! -- Internet Connection Security Analysis .

Attempting connection to your computer...
Shields UP! is now attempting to contact the Hidden Internet Server within your PC. It is likely that no one has told you that your own personal computer may now be functioning as an Internet Server with neither your knowledge nor your permission. And that it may be serving up all or many of your personal files for reading, writing, modification and even deletion by anyone, anywhere, on the Internet!
Please Note: On highly secure systems this may take up to one minute...



Gelukkig is OS/2 Warp zelfs zonder firewall niet zo gemakkelijk te kraken:

Unable to connect with NetBIOS to your computer.
All attempts to get any information from your computer have FAILED. (This is very uncommon for a Windows networking-based PC.) Relative to vulnerabilities from Windows networking, this computer appears to be VERY SECURE since it is NOT exposing ANY of its internal NetBIOS networking protocol over the Internet.

Daarnaast moet u zich realiseren dat anderen zonder dat u het weet servers op uw PC kunnen installeren. Via een Trojaans paard bijvoorbeeld of m.b.v. Java script. Gelukkig voor de OS/2 gebruiker zijn deze bijna allemaal voor Windows ontworpen.

Een ander nadeel is dat NetBIOS over TCP/IP moeilijker op te zetten is. Dat heeft niet alleen te maken met het TCP/IP protocol, maar ook met enige basale fouten in het MPTS configuratie programma die hieronder worden besproken. Daarnaast bestaat het probleem dat verschillende besturingssystemen hun NetBIOS via TCP/IP protocollen verschillend implementeren.

NetBIOS, routing en NetBIOS via TCP/IP

> Top <

Het eenvoudige NetBIOS protocol benadert slechts computers binnen een besloten netwerk (Werkgroep onder Windows, domein onder OS/2): Een ethernet LAN van computers die via de bekabeling van hun hub of switch direct met elkaar in verbinding staan. Het NetBIOS protocol ondersteunt geen routing via tussenliggende computers, modems en routers. De NETBIOS berichten van PC1-3 komen dus niet bij PC4 aan.



PC1________ switch of hub ___________router+modem----[internet]-----modem_____PC4
PC2 ________|  (NetBIOS en TCP/IP)       (alleen NetBIOS via TCP/IP)
PC3________|



Het NetBIOS ethernetwerk is een "broadcast netwerk": PC1 roept PC2. De op het lokale ethernet (LAN) computer PC2 reageert, maar alle op het netwerk aangesloten computers (PC1-3) luisteren noodgedwongen mee. Vergelijk dit met het "henkie, henkie" geroep op een 27 MC amateur-band. Op een groot NetBIOS netwerk is het daarom al snel een chaotisch heen en weer geroep van computers die elkaar proberen te benaderen. Roept een ethernetkaart een andere ethernetkaart op terwijl die al actief is ("collisie"), dan treden er automatisch wachttijden in. Dit aspect regelt de hardware van de ethernetkaart.

Door zijn eenvoud is een ethernet LAN met het NetBIOS protocol behoorlijk snel. Zeker op een thuisnetwerk. De OS/2 versie van het NetBIOS protocol heeft ook andere voordelen: het kan naast printers en mappen ook modems delen en geeft ondersteuning voor uitgebreide attributen.

TCP/IP laat gecompliceerde verbindingen over lange afstanden toe (WAN, internet). Dankzij TCP/IP routing kunnen verbindingen via vele tussenstations tot stand komen. Computers kunnen elkaar via hun unieke IP adres over het internet benaderen. TCP/IP is in tegenstelling tot het NetBIOS (ethernetkaart) niet gebonden aan bepaalde hardware zodat het heterogene netwerken kan worden gebruikt. Een veel voorkomende wijze van TCP/IP transmissie is het Point-to-Point (PPP) protocol via gehuurde telefoonlijnen. U gebruikt het als u internet en bedrijven als ze via ISDN of satellietlijnen met hun vestigingen communiceren.



Routing is de manier waarop de informatie (datagrammen) van netwerk naar netwerk worden gepompt. Het hele internet bestaat uit aan elkaar gekoppelde autonome netwerken. Computers binnen een TCP/IP netwerk kunnen elkaar via de unieke IP adressen van hun interfaces vinden. Datagrammen die bestemd zijn voor IP adressen die op een LAN niet thuis te brengen zijn (omdat er geen passende netwerkkaart voor is), worden naar een volgend netwerk doorgeschoven. De computer (of de hardware) die daartoe het netwerk met andere netwerken verbindt functioneert als router. Het IP adres van interface op het lokale netwerk van de router is de zogenaamde default gateway. De router moet het pakket weer doorsturen naar de passende host(s) op een tweede (of derde, etc) netwerk waarmee het in verbinding staat. Als de router die niet vindt stuurt hij het naar zijn eigen default gateway op dat netwerk. Hier herhaalt zich het proces. Via routers worden de datagrammen dus van netwerk naar netwerk naar hun uiteindelijke eindbestemming gezonden.



NetBIOS via TCP/IP maakt gebruik van 32 bits IP adressen om buiten het NetBIOS LAN om computers te benaderen. TCP/IP doet dat via het door de DNS omzetten van hostnamen in 32 bits IP adressen natuurlijk ook al, maar met NetBIOS over TCP/IP kun u ook hosts buiten het lokale ethernetwerk aan de ethernet "broadcast lijst" toevoegen. Via 'othdomains' in ibmlan.ini kunt u ook andere domeinen dan die van uw werkgroep aanspreken. Voorwaarde is dat u over het IP adres (of een NETBIOS naamserver) beschikt.

Een ander voordeel van de koppeling van het NetBIOS aan TCP/IP is dat er ook m.b.t. de hardware zeer heterogene netwerken kunnen ontstaan. Een gewoon NetBIOS ethernetwerk spreekt alleen met de lokaal op de hub aangesloten ethernetkaarten. TCP/IP werkt echter met vrijwel alle voor communicatie bestemde randapparaten en heeft dus een veel groter bereik. Het is geen wonder dat op het TCP/IP protocol gebaseerde netwerken inmiddels standaard zijn.

NetBIOS LAN

TCP/IP verbinding

LAN, WAN of thuiswerker 2 (3,4,..)

Lokaal ethernetwerk met op een hub aangesloten gateway/router.

Ethernet verbinding tussen de gateways, seriele dial-up of analoge (ISDN huur)lijn, eventueel met gebruikmaking van het internet

Gateway/router van ander netwerk of andere host. Alternatief: thuiswerker, internet.



NetBIOS over TCP/IP is overigens niet nodig om te internetten. Hiertoe volstaat het gewone TCP/IP protocol dat u gewoon naast het NetBIOS op logische adapter 0 protocol kunt installeren (zie Eenvoudige installatie ). Dat is wel zo veilig.

Ook kunt u via het TCP/IP protocol bestanden uitwisselen met bijv. Linux computers. Denk aan de FTP Folders en de immense mogelijkheden van een telnet. Het gaat echter minder transparant dan via het Drives object van een werkend NetBIOS over TCP/IP.

IBM OS/2 NETBIOS via TCP/IP installeren

> Top <

MPTS bevat een bug, waardoor de in \ibmcom\protocol.ini ingestelde logische adapters niet altijd in \ibmlan\ibmlan.ini worden geplaatst! Als u er niet op bedacht bent gaat u eindeloos klooien. Met onderstaande instructies komt u er wel uit.

Ga naar het MPTS icon (o.a. in Configuratie).





Kies LAN-adapters en protocollen.

U komt in het hieronder afgebeelde scherm. Klik op het venster Protocollen, selecteer IBM OS/2 NETBIOS VIA TCP/IP en kies Toevoegen. IBM TCP/IP en IBM OS/2 NETBIOS dienen ook geïnstalleerd te zijn. Als u de procedure van Netwerkonderdelen installeren gevolgd hebt is dat al gebeurd.

Standaard komt IBM OS/2 NETBIOS VIA TCP/IP naast IBM TCP/IP en IBM OS/2 NETBIOS op (de eerste) Logische Adapter 0 te zitten, maar dit moet u veranderen in nummer 1 (of de eerstvolgende vrije adapter). Gebruik Nummer wijzigen. Zie de afbeelding hieronder. IBM telt hier in UNIX traditie vanaf 0.


De reden is dat IBM OS/2 NETBEUI en IBM OS/2 TCPBEUI (NETBios over TCP/IP) niet op dezelfde (logische, niet de fysieke) adapterinterface mogen zitten. IBM plaatst ze standaard op Lan adapter 0.

Om een Remote Install uit te kunnen voeren dient het gewone NETBIOS protocol op Logische Adapter 0 (van het eerste netwerk= NET1) te zitten (tip van Al Savage die een procedure beschrijft voor ADSL en Kabelmodemgebruikers: OS/2 Warp 4 notes).

In theorie hoeft u niet zowel NetBIOS als NetBIOS via TCP/IP te installeren. Ik heb het echter zo gelaten omdat het bij mij goed werkt. En MPTS doet niet altijd wat het moet doen. Het verwijderen van NetBIOS in MPTS levert bij mij een foutmelding op:

De functie REQUESTER is niet gestart.

De functie REQUESTER is niet gestart.

NET3051: IBMLAN.INI of de opdrachtregel bevat een onjuiste waarde voor WRKNETS.


Voor meer informatie typt u HELP NET3051.

Hier wordt de requester (een soort proxy die contact maakt met remote servers) niet gestart omdat MPTS IBMLAN.INI niet heeft aangepast. OS/2 netwerk specialisten editen het bestand vaak met de hand. Er is ook een Rexx script (protochk.cmd) die dat dit voor u doet (maar helaas niet altijd).

Daarna klikt u (met IBM OS/2 NETBIOS VIA TCP/IP in de huidige configuratie geselecteerd) op Bewerken. Het eerste Item (Parameters stuurprogramma) configureert u nu niet. Dat is iets voor gevorderden.

De standaardinstelling B(roadcast)-NODE zal op een thuisnetwerk zonder NETBIOS Name Server voldoen. Want ethernetkaarten zijn tegenwoordig razendsnel.

Op grote bedrijfsnetwerken zit er meestal een WINS server op het netwerk. Dat mag ook de samba nmb daemon zijn. Hier kiest u voor het P(point-to-Point) protocol of veiliger (met windows weet je het nooit) voor H-NODE. In beide gevallen moet u wel het NETBIOS adres van die Netbios naamserver (NBNS, dat is wat anders als een WINS) opgeven. En niet vergeten het IP adres hiervan in de Lijst met namen in te voeren (zie hieronder).

B-node (type 0x01): De SMB client gebruikt alleen UDP broadcasts (Windows en OS/2 default).

P-node (type 0x02): De SMB client gebruikt point-to-point (NetBIOS unicast) verzoeken naar een NBNS server. Dit lukt ook via modems.

M-node (type 0x04): Eerst B(roadcast) proberen, dan P(point-to-Point). Dit is geen optie onder OS/2.

H-node (type 0x08): Eerst P(point-to-Point) proberen, als dat niet lukt B(roadcasten).

U stelt het netwerktype in met \IBMCOM\PROTOCOL.INI:

NODETYPE = "B-Node"
NBNSADDR = "191.168.1.2"

Aan het item Lijst met namen (Names list) voegt u de NETBIOS namen en bijbehorende IP adressen of DNS hostnamen van de computers op uw netwerken toe. De NETBIOS-naam van een computer (max 12 tekens onder OS/2 , maar 15 +1 onder NT!) hoeft dus niet dezelfde te zijn als de hostnaam voor de DNS (sjoerd-visser.demon.nl). De NETBIOS-namen en de bijbehorende DNS Hostnamen of IP adressen worden door MPTS toegevoegd aan het bestand \ibmcom\rfcnames.lst, dat enigszins lijkt op het /etc/hosts bestand van Linux.

"laptop" 192.168.1.21
"visser" 192.168.1.10
"zolder" 192.168.1.20
"sjoerd" sjoerd-visser.demon.nl

Als u het IP adres niet weet (DHCP), vult u de hostnaam in. Bijvoorbeeld: "laptop" laptop. Maar als het even kan geef ik de servers vaste IP adressen die in het etc\host bestand staan met SET USE_HOSTS_FIRST=1 in de CONFIG.SYS.

In het afgebeelde voorbeeld maken de PEERS deel uit van het lokale netwerk, maar met de lijst kunt u ook niet lokale bronnen op poort 139 te benaderen, zelfs de laserprinter op uw werk. Immers, (al dan niet lokaal) geldige IP adressen werken overal. De aanhalingstekens worden door MPTS toegevoegd.


Vervolgens voegt u de IP hostnamen (of IP adressen) van uw NETBIOS servers en clients aan de Verzendlijst (Broadcast list) toe. Ze staan in het bestand \ibmcom\rfcbcst.lst. Het gaat om de IP hostnamen of IP adressen van de clients die u via het SMB Broadcast systeem wilt benaderen. Dit UDP broadcast systeem zorgt ervoor dat uw SMB server zich in uw netwerkomgeving bekend maakt. Onder Windows heet dit Lan Manager (LM) announce. Het broadcastadres van uw ISP hoort daar niet bij, maar 192.168.1.255 moet wel kunnen.

Hebt u hier iets met de hand gewijzigd (dat kan met StarOffice als u deze site op uw Warp partitie zet) dan kunt met de opdracht \ibmcom\rfcaddr de adressen weer actualiseren (geen reboot nodig). Ziet u foutmeldingen als "Domain Controller not found" log dan lokaal in (logoff en logon /l draaien).



Bij het beeindigen van MPTS wordt de CONFIG.SYS bijgewerkt.

Al naar gelang uw configuratie worden stuurbestanden toegevoegd of verwijderd. De oude versie wordt opgeslagen als CONFIG.MPT.

Station D is mijn reddingspartitie. Die laat ik niet bijwerken. Dit om de configuratie simpel en "fail-proof" te houden en om geopende bestanden bij een chkdsk vanuit station D op station I te voorkomen.



Met de samba server verbinden

> Top <

Na deze aanmelding op het netwerk kunt u in Gemeenschappelijke Resources en Netwerkverbindingen voor Linux en NT dezelfde procedure doorlopen als in het peer-to-peer netwerk met Windows (zie Verbindingen). De stationsnamen die ik voor dezelfde PC onder Windows opgaf waren al vergeven, dus mijn mappen op de Linux PC kregen de stationsnamen S en T. Hiermee weet u meteen waar de foutmelding "Enige netwerkverbindingen zijn niet tot stand gekomen" vandaan komt. De onder Windows geldige shares van zolder waren onder Linux (nog) niet vrijgeven.

Voor de Netbios via TCP/IP toegang tot de shares onder Samba creëert u een onder Linux geldige inlognaam (liever niet "root", maar de naam waarmee u als gebruiker inlogt: bij mij "sjoerd") en het bijbehorende wachtwoord. Dat Warp de tekens in hoofdletters vertoonde bleek geen probleem. De wachtwoorden die nodig zijn voor de toegang tot de samba shares worden door OS/2 Warp 4, Windows 95 en Windows voor Werkgroepen 3.11 onversleuteld naar een samba server verzonden.

In /etc/smb.conf heet dat:

encrypt passwords = No

Maar met netwerksniffers zijn onversleutelde wachtwoorden gemakkelijk te achterhalen. Vandaar dat latere versies van Windows en Windows NT (vanaf SP 3.5) versleutelde wachtwoorden over het netwerk verzenden, die onder samba in een aparte database komen te staan.

Samba levert een oplossing voor een "gemengde " werkomgeving. Dus als u zowel versleutelde als onversleutelde wachtwoorden op het LAN gebruikt.

In de Global section van /etc/smb.conf plaats u het volgende om samba zowel met de onversleutelde wachtwoorden van Windows 95 en OS/2 Warp 4 als de versleutelde wachtwoorden van Windows 98, ME en NT te kunnen benaderen:

encrypt passwords = Yes

update encrypted = Yes

Wellicht moet u nog wel wachtwoordbestanden in swat updaten. Bij het opstarten van OS/2 wordt de verbinding met de samba server helaas niet meteen gelegd. De Status van de resource in de Gemeenschappelijke Resources en Netwerkverbindingen is in eerste instantie niet-actief. Door te klikken op Herstellen wordt alsnog een verbinding gelegd. Een mooiere optie is dit via startup.cmd te doen:

net use S: \\zolder\samba

net use T: \\zolder\sjoerd

Voor details over het uitzetten van de Windows encryptie zie: Samba.

Host bestanden onder Windows

> Top <

Windows NT kent zowel een LMHosts bestand als een HOSTS bestand. Het Lan Manager Hosts bestand wordt gebruikt voor het oplossen van NetBIOS namen. Ook van TCPBEUI. Het HOSTS bestand voor andere IP protocollen.

U vindt voorbeelden in winnt\system32\drivers\etc. Werkt de NET USE opdracht niet vanuit NT,W2K of XP, dan moet u ingangen in winnt\system32\drivers\etc\lmhosts aanmaken (zie: How to Write an LMHOSTS File en Domain Browsing with TCP/IP and LMHOSTS Files):

192.168.1.2 "THUIS    \0x1b"   #PRE
192.168.1.2 zolder #PRE #DOM:thuis
192.168.2.2 zolder1 #PRE #DOM:thuis1
192.168.1.3 laptop #PRE 
192.168.1.5 ecs #PRE 

In dit geval is NetBIOS server "zolder" met IP adres 192.168.1.2 de PDC van het domein THUIS (#DOM:thuis). Het achtervoegsel #PRE geeft aan dat de NetBIos naam in de cache bewaard moet worden.

U kunt deze gegevens controleren met de opdracht "nbtstat -R" op de Windows prompt..

winnt\system32\drivers\etc\hosts (nodig voor mail, proxy etc)

127.0.0.1 localhost
192.168.1.2 zolder.thuis
192.168.1.3 laptop.thuis
192.168.1.5 ecs.thuis

winnt\system32\drivers\etc\networks

loopback 127
thuis 192.168.1

Merkwaardig is dat ecs het in deze situatie toch niet doet (alleen ecs.thuis!!!!).

De gewone Windows versies bewaren deze bestanden in de \windows systeemmap.

De MPTS bug

> Top <

Tijdens het opstarten van OS/2 komt er een "SYS1719" of NET3401 fout met betrekking tot \IBMLAN\NETPROG\NETWKSTA.200:

Het stuurprogramma voor vergrendelde bestanden is geladen.                     
                                                                               
    Vergrendelde bestanden worden verwerkt...                                  
                                                                               
    Verwerking voltooid.                                                       
                                                                               
IBM OS/2 TCPBEUI 5.05.0                                                        
TCPBEUI: Gebruikt een 32-bit gegevenssegment.                                  
NET3403: De regel NETWORKS NET2 in het bestand IBMLAN.INI bevat                
een syntaxisfout en wordt genegeerd.                                           
NET3411: Er is een fout opgetreden bij het installeren van NETWKSTA.200.       
                                                                               
                                                                               
 Druk op Enter om door te gaan.                                                

De diepere betekenis hiervan kunt u opvragen met: help 1719

[I:\] help1719 
SYS1719: Het bestand ***, opgegeven in de opdracht *** op regel *** van CONFIG.SYS, bevat geen geldig stuurprogramma voor een apparaat of een bestandssysteem. Regel *** wordt genegeerd. 
VERKLARING: Het genoemde bestand bevat geen geldig stuurprogramma voor een apparaat of een bestandssysteem. 
Het kan ook zijn dat het een stuurprogramma voor DOS is, terwijl DOS niet is geactiveerd. 
ACTIE: Voer een van de volgende handelingen uit en start het systeem daarna opnieuw op: 
o Herstel de fout of verwijder de opdracht uit CONFIG.SYS. 
o Verwijder de opdracht PROTECTONLY=YES uit CONFIG.SYS. 
o Installeer het juiste stuurprogramma voor een apparaat of bestandssysteem in het opgegeven bestand. 
o Installeer alle dynalink-bibliotheken die voor het opgegeven stuurprogramma nodig zijn. 

Een stuurbestand wordt niet geladen. De oorzaak ligt in MPTS. MPTS blijkt niet altijd in staat om logische adapters in \ibmlan\ibmlan.ini aan \ibmcom\protocol.ini aan te passen. U moet \ibmlan\ibmlan.ini dan met de hand aanpassen.

Ik kwam dit probleem bij herhaling tegen bij de installatie van NetBIOS via TCP/IP (TCB) op een bestaand OS/2 systeem. Maar toen ik alle netwerkonderdelen meteen tijdens een schone OS/2 Warp 4 installatie installeerde kwam het niet voor.

Open in dit geval het bestand \ibmlan\ibmlan.ini met een teksteditor. Controleer of er een ingang voor terug te vinden is. Vaak ontbreekt de tweede ingang voor net2 = TCPBEUI$,1,LM10,100,100,14. Dan maakt u die handmatig aan met de de LM parameters (hier LM10,100,100,14) die bij uw kaart horen.

; OS/2 Peer initialization file 

[networks] 
net1 = NETBEUI$,0,LM10,100,100,14 
net2 = TCPBEUI$,1,LM10,100,100,14 

; This information is read by the redirector at device initialization time. 
[requester] 
COMPUTERNAME = VISSER 
DOMAIN = THUIS 
; The following parameters generally do not need to be 
; changed by the user. 

De computernaam en de naam van het domein zijn tijdens de installatie al aangepast. Controleer of de domeinnaam dezelfde is als onder de andere besturingssystemen. Het kan geen kwaad om onder Samba hoofdletters te gebruiken, maar het hoeft niet.

Vervolgens moet u in \ibmlan\ibmlan.ini nog op zoek gaan naar twee instellingen waarin de twee netwerken opgeven worden. Hier verandert u "NET1" in "NET1,NET2" zodat het tweede logische TCPBEUI netwerk ook gebruikt wordt:

wrknets = NET1,NET2 
srvnets = NET1,NET2 

In het bovenstaande geval worden twee logische adapters gebruikt. NET1 voor IBM TCP/IP en NetBIOS en NET2 voor NetBIOS via TCP/IP.

De relevante instellingen voor IBM TCP/IP met alleen NetBIOS via TCP/IP zijn:

[networks]
net1 = TCPBEUI$,0,LM10,34,100,14

[requester]
wrkservices = MESSENGER,PEER
wrknets = net1
Computername = VISSER
Domain = THUIS

[peer]
SRVSERVICES =
srvnets = NET1

En voor alleen NetBios en TCP/IP:

[networks]
net1 = NETBEUI$,0,LM10,34,100,14

[requester]
wrkservices = MESSENGER,PEER
wrknets = net1
Computername = VISSER
Domain = THUIS

[peer]
SRVSERVICES =
srvnets = NET1

Zijn beide netwerken aanwezig , maar kunt u TCPBEUI toch niet aanspreken (na te gaan met netstat -s), dan kunt u net 1 en 2 verwisselen (zie Virtual PC en OS2 Warp 4). Let verder op wrkservices = MESSENGER,PEER. Regelmatig ontbreekt de PEER dienst.

De SRVSERVICES = slaan op OS/2 Warp Servers. Opties zijn NETLOGON, LSSERVER, NETRUN, GENALERT. Voor het delen van bestanden zijn ze niet nodig. Als u TCP/IP goed ingesteld hebt moet u na een reboot de gedeelde mappen op de de Samba server kunnen zien.

I.g.v. samba moet u zich eerst aanmelden op het werkstation onder een gebruikersnaam en wachtwoord die door de Linux PC geaccepteerd wordt. Dat Warp (i.t.t. Linux) mijn naam ("SJOERD") en wachtwoord met hoofdletters schrijft was voor Samba geen probleem.

Op de prompt zal netstat -s (socket) aangeven dat er een verbinding met de samba server op zolder ("foreign host" 192.168.1.20) op poort 139 tot stand gekomen is ("established").

[I:\] netstat -s 
AF_INET Adresfamilie : 

SOCK TYPE FOREIGN LOCAL FOREIGN STATE PORT PORT HOST 
==== ========= ============= ============= ============= ============= 
19 STREAMnetbios-ssn..139 1024 192.168.1.20 ESTABLISHED 
15 DGRAM 0 13991 0.0.0.0 UDP 
14 DGRAM 0 0 0.0.0.0 UDP 
13 STREAM 0 0 0.0.0.0 CLOSED 
11 STREAM 0 0 0.0.0.0 CLOSED 
10 DGRAM 0 emfis-data..140 0.0.0.0 UDP 
9 STREAM 0 netbios-ssn..139 0.0.0.0 LISTEN 
8 DGRAM 0 netbios-ns..137 0.0.0.0 UDP 
7 DGRAM 0 netbios-dgm..138 0.0.0.0 UDP 
-------------------------------------------------------------------------- 
AF_OS2 Adresfamilie : 

-------------------------------------------------------------------------- 
AF_NB Address Family : 

SOCK TYPE PARTNER NAME LOCAL NAME U/G ADP STATE 

Veel voorkomende foutmeldingen

The network path was not found

> Top <

Een veel voorkomende NetBIOS foutmelding is OS/2 error 53. Het betreft het niet reageren van een SMB server op een oproep van de client.

De meest voorkomende oorzaken zijn:

  1. de SMB server is inactief.

  2. een firewall blokkeert de toegang tot de server.

  3. de NetBIOS naam wordt niet gevonden.

Een poortscan zou (1) en (2) moeten kunnen uitsluiten. Een actieve server is in de netwerkomgeving op de server zelf te zien. "Bestanden en printers delen" moet wel onder Windows geactiveerd zijn. Maar (3) is lastiger. Temeer daar OS/2 en Windows anders met NetBIOS namen omgaan.

Onder OS/2 dienen de NetBIOS naam en internet hostnaam van de SMB server in \ibmcom\rfcnames.lst te staan. Een ingang van de server in het broadcast verzendlijst van \ibmcom\rfcbcst.lst verdient aanbeveling, maar is niet noodzakelijk. Windows heeft aan een IP adres voldoende, maar onder OS/2 wordt de DNS hostnaam (mag ook in het etc\host bestand staan) alleen door IP gebruikt. Als u de NetBIOS naam in \ibmcom\rfcnames.lst aan een lokale IP hostnaam koppelt ("zolder" zolder), dan moet het IP adres van de SMB server "zolder" in \etc\host staan (zolder 192.168.1.2) zodat IP de door u in de rfcbc.lst opgegeven netBIOS naam kan oplossen.

Het aantal namen dat u via MPTS kunt invoeren wordt bepaald door de variabele NAMESFILE onder [tcpbeui_nif] in \ibmcom\PROTOCOL.INI (standaard 4). Als u met MPTS geen namen meer kunt invoeren en/of niet alle ingevoerde namen ziet, moet u deze waarde dus verhogen!

Een concreet voorbeeld: Stel dat \ibmcom\rfcnames.lst de volgende NetBIOS adressen bevat:

"Netbiosnaam"    hostnaam
"zolder"         zolder
"winkukel"       winkukel
"warp3"          192.168.1.3
"warp4"          192.168.1.4
"ecs"            192.168.1.5
"winkukel"       192.168.1.11
"suse8"          192.168.1.8
"w2k"            192.168.1.20

Bij de de standaardwaarde 4 van NAMESFILE in \ibmcom\protocol.ini geeft net view \\win2k een foutmelding over de niet gevonden NETBIOS naam, terwijl de IP hostnaam (uit etc\host) wel wordt gevonden. Alleen de eerste 4 ingangen van rfcnames.lst worden opgelost.

[G:\DESKTOP]net view \\w2k
NET3502: OS/2 error 53 has occurred.
SYS0053: The network path was not found.

[G:\DESKTOP]host w2k
w2k =   192.168.1.20

[G:\DESKTOP]ping w2k
PING w2k: 56 data bytes

De ping doet het hier niet vanwege een firewall op de Windows PC.

Na het verhogen van de variabele (NAMESFILE = 12) en het updaten van de RFCCache verdween de foutmelding.

G:\IBMCOM>rfcaddr.exe
Domain Name Server could not resolve             192.168.1.11.
Domain Name Server could not resolve             192.168.1.95.
Domain Name Server could not resolve             192.168.1.20.
Domain Name Server could not resolve             192.168.1.5.
Domain Name Server could not resolve             192.168.1.8.
Domain Name Server could not resolve             192.168.1.55.
Domain Name Server could not resolve ecsvpc.

G:\IBMCOM>net view \\w2k
Shared resources at \\w2k

Netname      Type         Used as  Comment
-----------------------------------------------------
D            Disk                  D schijf
Doc          Disk
The command completed successfully.

De melding "Domain Name Server could not resolve" is logisch omdat ik op mijn 192.168.1.0 privé netwerk geen DNS (of WINServer) draai. De genoemde adressen staan alleen in \etc\host. Maar OS/2's LMhost (ibmcom\rfcnames.lst) kon w2k (hier via het IP adres in \etc\host) wel vinden. En daar ging het om.

Let er echter wel op dat onder Samba en Windows IP adressen wel als "geldige" NetBIOS servernamen kunnen dienen. Om die reden kan een onder OS/2 onzichtbare share wel op het Windows netwerk (en vanaf het internet!) te zien zijn.

C:\>net view \\192.168.1.5
Shared resources at \\192.168.1.5

Share name   Type         Used as  Comment

--------------------------------------------------
BIN          Disk
DATA         Disk         J:
F            Disk
IN           Disk         K:
VAPRO        Disk         M:
The command completed successfully.

Dit gebeurt ook als de NetBIOS naam ecs niet in \winnt\system32\drivers\etc\(lm)host voorkomt. Dus er is ook geen sprake van een reverse lookup.

Maar onder eCS zien we dit:

[J:\home\sjoerd]net view \\192.168.1.5
NET3502: OS/2 error 53 has occurred.
SYS0053: The network path was not found.

[J:\home\sjoerd]net view \\ecs
Shared resources at \\ecs

Netname      Type         Used as  Comment
-------------------------------------------------------------------------------
BIN          Disk
DATA         Disk
F            Disk
IN           Disk
VAPRO        Disk
The command completed successfully.

Conclusie: OS/2 behandelt NetBIOS namen en DNS hostnamen als afzonderlijke eenheden, maar Windows TCPBEUI doet dit niet.

NET.ACC gerelateerde foutmeldingen

> Top <

De meeste kenmerkende zijn:

NET2228: There are too many names in the user accounts database
NET2228: De database met gebruikersaccounts bevat te veel namen.

Deze foutmeldingen gebeuren zowel onder NetBEUI als TCPBEUI. Ze duiden erop dat het de IBMLAN\ACCOUTS\NET.ACC database vol zit. De database met gebruikersaccounts NET.ACC bevat records van de gedeelde mappen en hun al dan niet legitieme gebruikers. U vraagt ze op met net access.

[C:\CMD] net access
Resource  Bevoegdheden       Bevoegdheden
=========================================================
D:          SJOERD:RWCXDA
E:          SJOERD:RWCXDA
\COMM      *USERS:RWC
\PIPE      *USERS:RWC
\PRINT     *USERS:C
De opdracht is uitgevoerd.



In dit geval worden de schijven D en E alleen met gebruiker sjoerd gedeeld en de COMM poorten, de NetBIOS named pipe voorziening en de printvoorziening met alle gebruikers. Maar met de net2228 fout zult u honderden shares voorbij zien schieten. Meer dan NET.ACC bevatten kan. De oorzaak van deze problematiek wordt onder Andere LAN hulpprogramma's besproken.

Inlogproblemen op een Linux samba server

> Top <

Als een Linux samba server u de toegang weigert:

[F:\home\default]net view \\zolder
NET3502: OS/2 error 65 has occurred.
SYS0065: Network access is denied.

Dan moet u bedenken dat iedere gebruiker twee accounts op de samba server nodig heeft:

  1. een voor de toegang tot het Linux systeem

  2. een voor de toegang tot de samba server.

Zie: Versleutelde wachtwoorden in de Linux sectie. De UNIX en SMB wachtwoorden en gebruikersnamen mogen verschillend zijn, maar voor iedere server en client dezelfde kiezen is wel zo gemakkelijk.

Met het rootwachtwoord kunt met SecureShell inloggen:

ssh -l sjoerd -tc /etc/ssh_term.linux host

Via su wordt u root. Daarna maakt u met met useradd gebruiker -p password -m op de server een nieuwe Unix gebruiker met home map aan.

zolder:/ # useradd gebruiker -p wachtwoord -m

Daarna voegt u met smbpasswd -a(dd) [gebruikersnaam] een samba wachtwoord toe.

zolder:/ # smbpasswd -a gebruiker
New SMB password:
Retype new SMB password:
Added user gebruiker.

Daarna zal view \\server het voor deze gebruiker wel doen.

Een vreemde situatie onder DHCP

> Top <

Als u voor een Window 95 server besluit DHCP te gebruiken en de ingang ervan niet uit OS/2's \etc\host en \ibmcom\rfcnames.lst wist, doet zich een merkwaardig fenomeen voor: OS/2 ziet de samba server op Windows wel, maar Windows ziet de samba server op OS/2 niet. En OS/2 kan de Windows server ook niet beschrijven.

De verklaring is als volgt: De OS/2 netwerkomgeving ziet de SMB server "winkukel" omdat hij zich onder het nieuw verworven DHCP adres met een LM announce onder het door hem nieuw gegeven DHCP IP als een nieuwe SMB server bekend heeft gemaakt. Windows richt zijn LM announce aan het broadcastadres van zijn netwerkomgeving: bij mij 192.168.1.255. OS/2 pikt het dus op. Ik ben "winkukel" en DHCP levert mijn IP adres. Als OS/2 de nieuwe SMB server "winkukel" in zijn netwerkomgeving browst (gegevens opvraagt), kan hij alle bestanden inzien, maar als OS/2 "winkukel" wil beschrijven, verstuurt hij de gegevens naar het oude IP adres (dat van de onaangepaste \ibmcom\rfcnames.lst). Windows geeft dan als foutmelding aan dat het netwerk niet wordt gevonden. Op dezelfde manier zal een Linux samba server op het verkeerde IP adres reageren.

Conclusie: DHCP is prima, maar pas er uw NetBIOS instellingen op aan.



Lange namen op FAT32 shares

> Top <

Windows 9x ondersteunt lange namen op vFAT en FAT32 schijven. Maar die worden niet via het netwerk naar OS/2 geëxporteerd.

[F:\]net use c: \\win98\doc
De opdracht is uitgevoerd.

[F:\]c:
[C:\>md lange_naam
SYS0206: De bestandsnaam of de toevoeging is te lang.

C:\>md lange naam

C:\>dir
DESKTOP.INI  LANGE  MYMUSI~1  NAAM  WPROOT~1.SF

Kopieert u lange namen naar de share, dan resulteert dat in foutmeldingen.

f:\home\werkplek\VOICE Newsletter 11!2004 - Micr
SYS0206: De bestandsnaam of de toevoeging is te lang.
f:\home\werkplek\webstats.motigo.com - Webstats
SYS0206: De bestandsnaam of de toevoeging is te lang.
        1 file(s) copied.



> Top <