Algemene TCP/IP sectie |
Server en applicaties sectie |
De OS/2 TCP/IP stack is op AIX gebaseerd en die weer op BSD. Hierdoor zult u in \tcpip\bin\ en \mptn\bin\ veel UNIX utilities aantreffen. De gelijkenis met Windows NT is frappant, wat natuurlijk ook wel te verklaren valt (zie: New Technology). Voor een eenvoudige inleiding in TCP/IP zie: Internet Protocol: enige basale zaken en Lastige klanten. OS/2 en het internet.
Tijdens de standaard Warp installatie met netwerkonderdelen moet u TCP/IP al instellen.
Maar achteraf de instellingen bijwerken of nalopen kan ook. Hiervoor gebruikt u het TCP/IP Configuratie (LAN) icon, waarvan zich een reflectie in Configuratie bevind. Het gaat om het TCP/IP Configuratie (LAN) notebook. Ik loop even mijn instellingen langs.
Het gaat om een eenvoudig ethernet adapter netwerkje met op de OS/2 PC "visser" NetBIOS, TCP/IP en voor Linux NetBIOS via TCP/IP geïnstalleerd. De multiboot PC "visser.thuis" fungeert voor het LAN als router (gateway) naar het internet. De bestandenserver is zolder.thuis. Deze is in tegenstelling tot de OS/2 PC (met het publieke adres sjoerd-visser.demon.nl) niet vanaf het internet te zien (zie schema). De clients op de Linux server zolder.thuis en laptop.thuis hebben internettoegang via Injoys Network Adress Translation (NAT).
Internet Gateway ISP |
<- - ppp0 - - > |
sjoerd-visser.demon.nl OS/2 als router (NAT) |
|
|
|
|
visser.thuis 192.168.1.10 eth0 |
<=== ethernet===> 192.168.1 |
zolder.thuis 192.168.1.20 eth0 laptop.thuis 192.168.1.21 eth0 |
Let op: Om Windows 2000 te gerieven heb ik het IP adres van de gateway PC "visser" moeten veranderen in 192.168.0.1. Onder Windows' kan Internet delen op het LAN (ICS) alleen via dit IP adres plaatsvinden. Maar Linux, OS/2 en BEOS zijn gelukkig flexibel.
Op de OS/2 PC zit één netwerkkaart (eth0), dus er is maar één LAN interface (NIC Network interface) te configureren. Ook als u Netbios via TCP/IP op een aparte logische adapter hebt gezet. Daarnaast kan het geen kwaad om een loopback interface te installeren.
Het
opzetten van een dial-up ppp0 interface met een internet provider
kunt u aan DOIP en anderen overlaten. Dat regelen deze programma's
als u inbelt. Dat kan als consequentie hebben dat een Default route
op het LAN onbereikbaar wordt. Zie: Wanneer
is routing wel nodig?
De te configureren interface is dus LAN interface 0 (eth0 onder Linux).
Interface inschakelen: aanvinken.
U kunt kiezen tussen een automatische (vereist een DHCP server van bijv. een router) of handmatige toebedeling van IP nummers. Hier is gekozen voor de laatste optie met een IP adres uit het privé bereik (klasse C netwerk). DDNS is een Dynamic Domain Name Server (uitlaten, tenzij uw ISP of netwerkbeheerder er om vraagt). Ik koos voor de handmatige instelling van een privé klasse C netwerk.
IP-Adres : 192.168.1.10 (zie Let op)
Subnetmasker : 255.255.255.0
Geavanceerde opties : kunt u meestal zo laten!
Broadcast adres: Met de standaard (leeg veld) wordt bij het bovengenoemde subnetwerkmasker 192.168.1.0 het standaard het directed broadcast adres 192.168.1.255 aangemaakt. De 0 wordt vervangen door een 255. Hiermee worden de hosts van het 192.168.1.0/24 netwerk bereikt. Hiermee ontvangen alleen de op uw netwerk aanwezige 192.168.1.x IP adressen het niet door de datalink laag te negeren "Hier ben ik" broadcast bericht.
Maar stel dat uw computer op 192.168.1.5 meerdere netwerken moet bedienen: dus behalve zijn eigen 192.168.1.0/24 werkgroep ook aan 192.168.2.0/24 netwerk. Dan zal hij de "Hier ben ik" broadcast" naar een groter gebied moeten verzenden. In dat geval maakt u onder geavanceerde opties het broadcast adres 192.168.255.255 aan om de host op 192.168.2.1 te kunnen bereiken.
Bestemmingsadres: Standaard: leeg veld. Het bestemmingsadres is het IP adres waar de "hier ben ik" berichten naar toe moeten gaan. Standaard volgt dat uit het netwerkmasker (dus bij 192.168.1.0 wordt het 192.168.1.255). Maar in het geval; van een PPP verbinding is het de router van de PPP interface,
Metric count: 0 (het aantal sprongen)
Maximum transmission unit (MTU): 1500 Bytes.
Een ethernetframe is maximaal 1518 bytes lang. Na aftrek 14 bytes voor de header en 4 bytes voor de frame-check response, blijven er maximaal 1500 bytes voor de data over. IP datagrammen die groter zijn dan de MTU zullen gefragmenteerd worden verzonden.
Voor netwerken die via het Point-to-Point Protocol over Ethernet (PPPoE) met het internet verbonden zijn, wordt een MTU waarde van 1492 Bytes aanbevolen. Deze waarde komt overeen met de 1500 bytes MTU van ethernet minus 2 bytes overhead voor het PPP protocol en 6 bytes PPPoE overhead. Dial-up inbelverbinding en/of PPP hebben vaak een MTU van 576 Bytes.
Bereik van MTU waarden: Ethernet: 60-1500; 802.3: 60 - 1492; Token-Ring: 60 - 4056 (kan soms hoger); Serial Optical: 1 - 61428; SLIP: 60 - 4096.
Door op Volgende te klikken ziet u meer configuratie opties! Die kunt u doorgaans zo laten (niets aanvinken zoals hiernaast).
Ik wijs u nog even op het ethernet IEEE 802.3 protocol dat nodig kan zijn op de interface van een (A)DSL verbinding.
Voor een gewone ethernetkaart wordt het ethernet DIX-2 protocol gebruikt (dus in de niet-aangevinkte situatie zoals hiernaast).
Loopback interface (laatste ingang):
IP adres : 127.0.0.1
Subnetmasker : (geen)
De loopback (terugkoppeling, dummy) interface kent geen netwerkmasker. Het is een gesimuleerde netwerkadapter met een vast IP adres in de 127.x.x.x. reeks. Door de loopback interface te activeren (ifconfig lo 127.0.0.1 up) ontstaat een plaats waar TCP/IP netwerkprogramma's met elkaar kunnen communiceren op een niet op een netwerk aangesloten PC. Voorbeelden zijn de XFree86/OS2 X server en sendmail.
Als u Warp alleen maar gebruikt voor het delen van bestanden en printers via het NetBIOS , hebt u geen routing nodig. Binnen het broadcast bereik van de ethernetkaart (zeg maar het domein) kunt u alle PC's bereiken. Met NetBIOS via TCP/IP zijn Linux samba servers, internet-diensten en proxies op uw ethernetwerk zonder speciale routing tabel ingangen te bereiken.
Routegegevens : <NO ENTRIES> levert dan het volgende op (NetBIOS via TCP/IP)
[I:\]netstat -r
bestemming router netmasker refcnt gebruik vlaggen snmp intrf decimaal
127.0.0.1 127.0.0.1 255.255.255.255 0 0 UH 0 lo
192.168.1.0 192.168.1.10 255.255.255.0 0 0 U 0 lan0
192.168.1.20 192.168.1.10 255.255.255.255 2 13 UH 0 lan0
192.168.1.21 192.168.1.10 255.255.255.255 0 2 UH 0 lan0
U ziet hier achtereenvolgens ingangen voor de loopback interface, het netwerk op LANinterface 1 en aparte ingangen voor PC's met IP adressen 192.168.1.20 ("zolder") en 192.168.1.21 ("laptop") die aan de omroep (broadcast) lijst van NetBIOS via TCP/IP zijn toegevoegd.
Gebruikt u DHCP, dan hebt u hier doorgaans ook niets te zoeken.
Internet pakketjes worden van netwerk naar netwerk gesleept. Dit is de taak van de router. Een router verbindt twee of meer netwerken. Dit kunnen fysiek verschillende netwerken zijn (ethernet, ISDN, modem of token ring) of fysiek gelijksoortige (ether)netwerken zijn, die slechts in logische IP adres bereiken verschillen (internet, 10.0.0.0, 192.168.0.0). Hoe dan ook. Een router sleept ze erdoor.
Een OS/2 router PC maakt deel uit van meerdere netwerken en beschikt dus over verschillende netwerkinterfaces, elk met hun eigen IP adres. Op het internet of een bedrijfsnetwerk bestaat een router meestal uit gespecialiseerde hardware, maar ook computers met meerdere netwerkkaarten en/of alternatieve netwerk-interfaces zoals nulmodems, modems en kabelmodems kunnen ook als router dienst doen.
Routing komt dus pas in beeld als u die verschillende netwerken (bijv. LAN en internet) met elkaar wilt verbinden. Het bestaat uit het configureren van de netwerkinterfaces (en bijbehorende IP adressen) op de computers waarlangs de op zich blinde IP pakketjes moeten gaan. Het doel van de routing is dat de IP pakketjes de juiste interface (hun in- en uitgang) vinden. De routing van uw netwerk is dus de de bewegwijzering die u aanbrengt op uw LAN.
Routing werkt als volgt: Pakketjes die niet op een lokaal netwerk thuishoren worden naar het IP adres van de router (default route, gateway) gestuurd. Deze sluist ze door naar de het volgende netwerk. Vinden ze daar hun bestemming dan blijven ze daar, anders gaan ze naar de volgende default route. Als die er niet is, dan gaan de pakketjes met een IMCP bericht dood.
Een computer met slechts één netwerkkaart kan tijdelijk als router dienst doen bij een dial-up verbinding naar het internet. Die computer heeft dan een door de Internet Service Provider (ISP) toegewezen publiek IP adres en een IP adres op het LAN. Het opzetten van de PPP interface en de routing regelt de dial-up software tijdens het inbellen.
Gedurende een dial-up verbinding met het internet zal de routing van de computer dus veranderen. Een eventueel door u ingevoerde default route op het LAN (met de CONFIG.SYS variabele SET ETC=\MPTN\ETC in \mptn\etc\resolv2) wordt door het IP adres van de internetprovider (gateway) vervangen. Met dial-up verbindingen worden dus de beste firewalls omzeilt. Deze tijdelijke default route wordt gedurende de duur van de verbinding in het bestand \mptn\etc\resolv geplaatst. De laatste is dus een tijdelijk aangemaakt bestand te vergelijken met de dynamische bestanden in de /dev map van UNIX. Computers op het LAN die u via de oorspronkelijke LAN gateway moest bereiken zullen dan tijdelijk niet te bereiken zijn. Dit omdat de OS/2 TCP/IP stack eerst in %etc%/resolv kijkt en pas daarna in %etc%/resolv2. U kunt wel in de Tab route alternatieve wegen (host, net) invoeren om die computers en netwerken buiten de standaard route te bereiken. Dan komt de bewegwijzeringsfunctie (routing) van de opdracht route weet te pas. Bijv.
route add host 10.0.0.150 10.0.0.138 -hopcount 1 route add net 192.168.0.0 192.168.0.5 -hopcount 1
Wat zoiets betekent als: Benader de computer (host) met het IP adres 10.0.0.150 via de netwerkaart met IP adres (= interface) 10.0.0.138 en benader het lokale netwerk 192.168.0.0 via de netwerkkaart met IP adres 192.168.0.5. Deze netwerkkaart moet natuurlijk wel binnen het bereik van de computer staan. De hopcount parameter geeft het aantal netwerksprongen over interfaces aan die nodig zijn om het door "route add host" gespecificeerde IP einddoel of de router van het "route add host" netwerk te bereiken.
Door de IP adressen is een en ander nogal abstract. Daarom geef ik het eens anders weer. In de analogie van de treinreis van Groningen naar Maastricht (waarvan ik maar een variant weergeef) zijn stations hosts, overstapstations routers (nodes) en provincies netwerken.
Stel u woont in Groningen en u moet per trein naar Maastricht. U moet volgens de NS routeplanner twee keer overstappen: In Amersfoort en Maastricht. In Zwolle mag u blijven zitten. De NS routeplanner geeft aan dat u in Amersfoort richting Utrecht Centraal moet overstappen. In Utrecht neemt u de trein naar Maastricht.
Tijd |
Treinstation/Locatie |
Spoor |
Richting |
Reisdetails |
20:38:00 |
Groningen |
2b |
Zwolle |
Intercity 778 |
02:24:00 |
Amersfoort |
7 |
|
|
22:27:00 |
Amersfoort |
6a |
Utrecht Centraal |
Intercity 1778 |
22:42:00 |
Utrecht Centraal |
7b |
|
|
23:04:00 |
Utrecht Centraal |
12a/b |
Hertogenbosch ('s) |
Intercity 885 |
01:03:00 |
Maastricht |
6 |
|
|
Een nationale routing tabel voor sneltreinen in Groningen zou dan als volgt kunnen zijn:
route add net Friesland Leeuwarden -hopcount 1
Verkeer voor Friesland sturen we alvast naar Leeuwarden. Ik negeer Drente en Duitsland even want de rest sturen we naar Zwolle:
route add default Zwolle
Vanuit Zwolle moeten de Groningers dus naar de rest van het land.
In Zwolle moet bekend zijn dat verkeer voor Utrecht (CS) via Amersfoort loopt:
route add host UtrechtCS Amersfoort -hopcount 1 route add net Utrecht Amersfoort -hopcount 1
Maar omdat het IP pakketje slechts weet dat hij naar Maastricht (netwerk Limburg) moet, helpen we hem op de goede weg met:
route add net Limburg UtrechtCS -hopcount 2
In Utrecht moet minimaal bekend zijn dat verkeer voor Limburg en Maastricht via 's Hertogenbosch loopt.
route add net Limburg 's_Hertogenbosch -hopcount 1 route add host Maastricht 's_Hertogenbosch -hopcount 1
Routing is niet moeilijk als u zich inleeft in een van niets wetend TCP/IP pakketje en de topologie van uw eigen netwerk kent. Verander de netwerk- en hostnamen in IP adressen (of voer ze in al uw hosts bestanden in) en u hebt de routing op uw terrein geregeld. En wat u niet kunt weten stuurt u naar uw default route. En als het pakketje eenmaal voorbij de gateway naar het internet (uw modem) is, bent u niet meer voor verantwoordelijk.
route add default Mijn_ISP_of_Router -hopcount 1
Als de TCP/IP routing wordt geactiveerd kunnen IP datagrammen van het internet doorgegeven worden naar andere LAN computers. Dit behelst natuurlijk een veiligheidsrisico, dat groter wordt naarmate men langer langer de verbinding met het internet in stand houdt. ADSL en kabelmodemgebruikers kunnen daarom het best gebruik maken van een hardwarefirewall en/of een proxy.
Op een thuisnetwerk zal de met het internet verbonden PC als router optreden. Deze PC verbindt het netwerk van uw internetprovider (Internet Service Provider, ISP, kortweg "het internet") met uw LAN. Aangezien u in de regel op ieder moment maar een internetadres zult hebben, moeten de LAN PC's het door uw ISP afgegeven internetadres delen. Hier komt Shared Networking door middel van netwerkadresvertaling in beeld.
De OS/2 PC "visser" met IP adres 192.168.1.10 fungeert hier als gateway naar het internet voor de andere computers op het ethernetwerk ("laptop" en "zolder"). De gateway van de OS/2 PC zelf is de Gateway van de ISP. Deze ppp interface wordt door het inbelprogramma opgezet. Het inbelprogramma Injoy verzorgt de benodigde netwerkadresvertaling (IP masqurading). Met de gewone IBM dialer is dit niet te bereiken.
Internet Gateway ISP |
<-- ppp0 - > |
sjoerd-visser.demon.nl 195.173.244.121 OS/2 als router (NAT) |
|
|
|
|
visser.thuis 192.168.1.10 eth0 ipgate on |
hub /switch van 192.168.1 netwerk |
laptop.thuis 192.168.1.21 eth0 zolder.thuis 192.168.1.20 eth0 |
Om het internettoegang van een OS/2 Warp computer met de computers op het LAN te delen moest ik een extra route naar het ethernetnetwerk aanmaken. Dit om vanuit OS/2 IP pakketjes van het internet naar een Linux PC en laptop te kunnen versturen. Het Routetype in Route toevoegen is "net".
Bestemmingsadres : 192.168.1.0 (het ethernetwerkadres)
Routeradres : 192.168.1.10 (het IP adres van de netwerkkaart die de gegevens naar het netwerk doorzend, vaak "de router".)
Metric count : 1 (niet obligaat, vooral van belang bij DHCP: dynamisch routen)
Subnetmasker : 255.255.255.0
Regelmatig kunt u de routing voor een OS/2 PC die u op slechts één ethernetwerk (hier lila) als tijdelijke router naar het internet gebruikt ook wel weglaten. De kaarten zitten immers op dezelfde switch of hub. De knop IP doorsturen (IP forwarding) moet altijd zijn aangevinkt, omdat tijdens een dial-up verbinding IP datagrammen van de OS/2 PC naar de Linux PC moeten worden doorgestuurd. Standaard staat dit in Warp 4 uit en dat is wel zo veilig. Met de opdracht ipgate [on,off] kunt de de routerfunctie van de OS/2 PC handmatig in en uitschakelen.
De routerfunctie komt altijd in beeld als u meerdere netwerken schakelt. Stel dat zolder.thuis een tweede netwerkkaart (10.0.0.1) heeft die op een 10.0.0.0 netwerk (net2) is aangesloten, dan is de opzet voor de met het internet verbonden PC (sjoerd-visser.demon.nl, visser.thuis) als volgt:
Internet Gateway ISP |
sjoerd-visser.demon.nl OS/2 als router (NAT) |
|
|
|
visser.thuis 192.168.1.10 eth0 |
zolder.thuis 192.168.1.20 eth0 |
|
|
Ieder netwerk (demon.nl, thuis en net2) heeft zijn eigen kleurtje. |
zolder.net2 10.0.0.1 eth1 |
bouke.net2 10.0.0.2 (etho) |
Het Routetype in Route toevoegen is "net".
Bestemmingsadres : 10.0.0.0 (het tweede netwerkadres)
Routeradres : 192.168.1.20 (het IP adres van de netwerkkaart die de gegevens doorzend)
Metric count : 1 (niet obligaat, vooral van belang bij DHCP: dynamisch routen)
Subnetmasker : 255.0.0.0
De directe route (Routetype host) van visser.thuis (192.168.1.10) naar bouke op net2 (10.0.0.2) verloopt over 192.168.1.20 (de met 10.0.0.2 verbonden PC). Op een hub geeft dat minder overhead (broadcasting) dan het invoeren van het type "net".
Voor computers die via een simpel thuisnetwerk toegang moeten hebben tot het internet (in mijn voorbeeld "laptop" en "zolder") moet u een Default route aanmaken naar de met het internet verbonden computer (de router "visser"). IP doorsturen staat hier uit (ze zijn zelf geen routers). Alleen bij gebruik van een proxy kunt u van de default route afzien.
Als routeradres (Default route) van de LAN computer met de netwerkkaart met IP adres 192.168.1.20 geeft u het IP adres van de netwerkkaart van de inbellende computer op (192.168.1.10). Dat kan ook een modemrouter zijn.
Via het IP adres van de netwerkaart (192.168.1.10) van de router (de default route) kunnen de andere computers van het thuisnetwerk de ppp verbinding met de internet provider delen. Voor meer info over de routing zie: Injoy: IP masquerading met OS/2.
Voor het 10.0.0.0 netwerk is 10.0.0.1 router naar het internet (de default route). Als op "zolder" de routerfunctie aanstaat (ipgate on) wordt hiermee het 10.0.0.0 netwerk met het 192.168.1.0 netwerk van de naar demon.nl bellende PC verbonden.
Bedenk steeds dat de IP adressen en hostnamen niet aan computers gebonden zijn, maar aan netwerkinterfaces: netwerkkaarten, ppp devices e.d. En dat de default route van een netwerk of host alleen een netwerkinterface (van een router) van haar eigen netwerk kan zijn. Bij routing is dit inzicht van groot belang.
Tip |
---|
De opzet van de LAN adapters en de TCP/IP routing wordt in \mptn\bin\setup.cmd vastgelegd. Dit script wordt tijdens TCP/IP starten uitgevoerd. Maar niets belet u om alternatieve routing configuraties in scripts (klus.cmd ) vast te leggen. Dat kan handig zijn als u op meerdere locaties inlogt met een notebook of als een provider om DHCP vraagt. Een icon aan het script hangen en met een muisklik kan de TCP/IP configuratie worden aangepast. |
Dit tabblad bestaat uit twee pagina's.
Eerste pagina (1/1).
Hostnaam van deze machine: visser
Naam lokaal domein : thuis
Adressen naamserver: de IP adressen van de naamdiensten (DNS servers) van uw internet provider, eventueel het IP adres van een lokale naamdienst of die van het WAN..
Ze komen in het bestand %ETC%\resolv2 te staan.
Voor Win-OS/2 gebruikt u %ETC%\resolv.
Zoeklijst LAN domein: niets (speelt alleen op een groot netwerk)
Tweede pagina (2/2).
Voeg de IP adressen en hostnamen van de door u benaderde computers in. Het gaat om de IP adressen van de niet via de DNS te benaderen computers. De hostnaam is bij voorkeur de Fully Qualified Hostnaam hostnaam.domein (hier laptop.thuis). De alias bespaart u tikwerk bij een "telnet laptop". Zonder HOSTS ingang zou u "telnet 192.168.1.21" moeten opgeven. Vergeet de naam van uw eigen computer niet in t vullen.
Gebruikt u sendmail zonder een vaste internetverbinding dan moet u de hostnaam en het IP adres van smtp server van de ISP invoeren. Deze is op te vragen met het commando host:
[I:\]host post.demon.nl post.mail.nl.demon.net = 194.159.73.20
De reden is dat de sendmail alleen post accepteert die het ook bestellen kan. Post waarvoor geen 32 bits IP bestemming gevonden wordt, wordt door sendmail geweigerd. Laat u de ingang van de smtp server van de ISP uit het hostbestand dan kan sendmail alleen via de DNS zijn IP adres opvragen. En da lukt alleen als u met internet verbonden bent. Als u niet verbonden bent zal sendmail alleen de lokale post (voor zover de adressen in hostbestand aanwezig zijn) in de wachtrij plaatsen en bestellen. De niet-lokale post wordt geweigerd.
Plaatst u het IP adres van de smtp server van uw internet provider (smarthost, op te geven in SMTP-postgateway) in het hostbestand, dan zal sendmail de post wel accepteren. Een sendmail -q (deze opdracht leegt de wachtrij) zal de post tijdens een dial-up verbinding naar uw ISP versturen, die de verzending dan verder afwikkelt.
Ook met een vaste internetverbinding is het wijs om de post meteen naar de ISP (smarthost) te sturen. Dit ontlast sendmail. U hebt hier alleen niet het probleem van de afwezige DNS.
Dezelfde truc kunt u ook uitvoeren met servers die u veelvuldig benaderd. Denk aan Hobbes. Hier maakt u gebruik van het feit dat het hostbestand sneller te raadplegen is dan de DNS.
127.0.0.1 localhost
192.168.1.20 zolder.thuis zolder
192.168.1.21 laptop.thuis laptop
192.168.1.10 visser.thuis visser
194.159.73.20 post.demon.nl
149.174.177.156 smtp.compuserve.com
128.123.3.50 hobbes.NMSU.Edu Hobbes #Hobbes OS/2 Archive
Bedenk echter wel dat alleen de DNS de actuele informatie heeft. De IP adressen van servers op het internet kunnen veranderen. Gebruikt u een proxy dan moeten de waarden in het hostbestand van de proxy ingevuld worden.
Vergeet niet "Zoeken in HOST-lijst alvorens naar naamserver te gaan" aan te vinken. Dit komt overeen met Linux' "order hosts bind" in /etc/host.conf . Uw eigen %ETC%\HOSTS lijstje wordt dan als eerste gebruikt om hostnamen op te lossen, pas daarna de niet altijd aanwezige DNS. Het TCP/IP configuratieprogramma past de config.sys aan:
SET USE_HOSTS_FIRST=1
Het voorkomt ook dat Injoy automatisch gestart wordt als u een URL op uw thuisnetwerk benaderd!
Het TCP/IP netwerk is nu geconfigureerd. U moet nu rebooten om de CONFIG.SYS instellingen te activeren. Bij een herconfiguratie kunt u \MPTN\BIN\SETUP.CMD of een andere opdracht draaien om IP adressen en routes te veranderen zonder te rebooten.
Zie "De internet daemon van OS/2". Deze functies maken uw OS/2 PC voor anderen benaderbaar via het internet. Alles standaard uitlaten, tenzij u de OS/2 PC als server wilt gebruiken en precies weet wat u doet!!!
De rest van het tabblad betreffen de instellingen voor enkele TCP/IP applicaties en servers.
Naam Gebruiker: sjoerd
Uw gebruikersnaam op systemen die u met remote clients als lpr, rexec en ssh wilt benaderen. Uw gebruikersnaam wordt in de CONFIG.SYS geplaatst:
SET USER=gebruikersnaam
Bedenk dat onder UNIX gebruikersnamen hoofdlettergevoelig zijn. Logt u onder een andere naam in dan kunt u SET USER=gebruikersnaam in een cmd bestand plaatsen of het als parameter meegeven aan de client. De Secure Shell/2 opdracht ssh [-l login_name] hostname [command] wordt dan:
[F:\]ssh -l root zolder /usr/sbin/fetch 1.9.4: verbosity level is 2 Trying to connect to news.demon.nl ... Killed by signal 2. [F:\]
Na beëindiging van de klus (hier Ctrl-C) komt de OS/2 prompt weer terug.
Tijdzone: CET-1
De tijd t.o.v. Greenwich Mean Time.
De OS/2 Warp 4 beveiliging van de server functies is onder de maat, temeer daar het om een single-user systeem gaat.
Wachtwoord telnet: leeglaten
OS/2 plaatst het telnet wachtwoord in de config.sys. Dat is onverstandig. U kunt met een eenvoudig batchbestand hetzelfde bereiken.
set user=sjoerd
set telnet.password.id=geheim
telnetd
Het wachtwoord verschijnt dan niet in een set opdracht. Alleen de cmd sessie van telnetd weet het.
[F:\]set grep telnet
GREP TELNET=(null)
Maar gebruik liever de Secure Shell/2 daemon. De ssh daemon controleert meer dan het wachtwoord alleen en zal alle informatie (inclusief het wachtwoord) versleuteld over het netwerk sturen.
Toegangsbeveiliging FTP (TRUSERS) : Met toevoegen voegt u gebruikersnamen en wachtwoorden toe aan het onversleutelde FTP wachtwoordenbestand \mptn\etc\trusers.
user: bouke geheim rd: h:\home\bouke h:\home\ftpuser wr: h:\home\bouke h:\home\ftpuser\upload
Als u de ftpd in "De internet daemon van OS/2" inschakelt kunnen "trusted users" nu met FTP clients het Warp werkstation benaderen.
Vink hieronder het verwarrende "Geen leestoegang tot directory's" en "Geen schrijftoegang tot directory's" niet lichtvaardig aan: Zoals in de N.B. lezen te valt resulteren ze meestal in de omgekeerde situatie : U gooit dan alles open! Ook uw wachtwoordbestanden. |
In de onder afgebeelde situatie kan zoon Bouke zijn eigen bestanden lezen en beschrijven. Hij heeft leestoegang tot de h:\home\ftpuser\ map en kan bestanden naar h:\home\ftpuser\ upload uploaden. Een zwak punt van deze constructie is dat Bouke ook een bestand dat door mij geupload is kan veranderen of wissen (onder UNIX is dit door de gebruikers georienteerde schrijftoegang te voorkomen). Gebruik de FTP daemon dus alleen in een trusted omgeving binnen een goed van de buitenwereld afgeschermd LAN. Of gebruik een alternatieve FTP server.
Op de volgende twee pagina's is meer in te stellen.
Wachtwoord voor REXEC-gebruikers: geef een wachtwoord op van Remote Execute gebruikers. Dit wachtwoord komt in de CONFIG.SYS te staan:
SET PASSWD=
Met een install.cmd die de volgende regel bevat en sendmail actief, wordt uw wachtwoord naar happy hacker sjoerd@zolder.thuis verzonden....
'sendmail -f %USER%@%HOSTNAME% sjoerd@zolder.thuis < config.sys'
Host die RSH-server mogen gebruiken (RHOSTS): Hier geeft u gebruikersnaam, de hostnaam en het domein op van de Remote Execute gebruikers.
Geautoriseerde gebruikers krijgen toegang tot alle opdrachten: ook uw fdisk. Gebruik daarom liever de Secure Shell/2 daemon en wis alle wachtwoorden in de CONFIG.SYS.
Host die TFTP-server mogen gebruiken (TFPPAUTH): Hier stelt u de hosts in die van een bepaalde map op het OS/2 Warp werkstation gebruik kunnen maken.
Trivial File Tranfer Protocol was bedoeld voor snelle bestandsoverdracht in een van de buitenwereld afgeschermde UNIX omgeving. U kunt er vaste schijfloze werkstations mee booten. Er is geen gebruikersauthentificatie. U moet een directory opgeven en de (trusted) hosts die u toegang verleend. Plaats geen privacy gevoelige data in de submappen. Omdat TFTP via UDP werkt is het behoorlijk snel, maar niet geschikt om bestanden via meerdere routers te verplaatsen. Hiervoor was FTP (TCP) bedoeld.
Hier configureert u servers voor de bij OS/2 geleverde TCP/IP client toepassingen. Waarschijnlijk zult u ze niet gebruiken. NewReader/2, Gopher en de IBM WebExplorer zijn sterk verouderd.
NewReader/2-server: news.provider.nl of beter een proxy (geen NR/2 is geenOLR).
Gopher-server: gopher.provider.nl
Word Wide Web-server: www.provider.nl
Instellingen voor andere clients worden in de betreffende clients zelf ingesteld.
Hiermee configureert u de OS/2 TCP/IP stack als SOCKS 4 client. Het voordeel hiervan is dat het transparant (ook voor veel niet "socksified" clients) werkt. U hoeft dus geen SOCKS servers in de applicaties invullen. Daarna kunt u via een SOCKS daemon op een aan de kabel aangesloten Linux of eComStation firewall het internet opgaan. Voor details zie: 8.2 Het generieke SOCKS proxy protocol.
U kunt deze TAB probleemloos overslaan en uitlaten.
Ik vulde echter wat in uit nieuwsgierigheid om te zien wat er zou komen te staan.
Hecht er verder geen waarde aan!!!
SOCKS standaardinstellingen configureren (1/3)
Het bestand \mptn\etc\socks.env bevat dan:
socks_flag on socks_user sjoerd socks_domain sjoerd-visser.demon.nl socks_ns 194.159.73.136 socks_server
DIRECT Routegegevens (2/3)
Deze waarden komen in \mptn\etc\socks.cfg te staan:
direct 192.168.0.0 255.255.255.0
Standaard SOCKS servers configureren (3/3)
Deze waarden komen dan onder de voorgaande in \mptn\etc\socks.cfg te staan:
direct 192.168.0.0 255.255.255.0 sockd @=192.168.1.20 0.0.0.0 0.0.0.0
Er zijn verschillende methoden om op het netwerk printers te delen.
Via het NetBIOS kunt u printers, modems en mappen delen. Dat is waarschijnlijk de gemakkelijkste weg op een thuisnetwerk. Want de NetBIOS bronnen zijn niet op het internet te zien.
Via NetBIOS over TCP/IP op poort 139 deelt u bestanden met NT en samba servers.
Via de LPR (Remote Line Printer) client en de LPD daemon kan Warp printers met UNIX computers printers op een TCP/IP netwerk delen. De voorwaarde is een postscript (PS) compatibele printer. Een Warp netwerkstation ondersteunt zelf al acht PS printers.
Via de later toegevoegde SLPR interface kan OS/2 direct netwerk Linux/Unix of Apple postscript printers bereiken.
Netwerkprinters die via het Server Message Block protocol te bereiken zijn (1 en 2), worden in de Resource-browser Bestanden en Printers Client getoond. Het netwerk heet standaard LS van OS/2 LAN server.
Als u een Netwerkprinter model naar de desktop versleept ziet u ze al staan (in het voorbeeld hiernaast gaat het om de Line Printer Deamon van een samba server). Daarna kunt u met Drag & Drop via het netwerk printen.
Het gaat hier om het instellen van de "remote" Line Printer (Printer op afstand).
Afdrukserver op afstand: zolder
SET LPR_SERVER=ZOLDER
Printer van afdrukserver op afstand: lp
SET LPR_PRINTER=LP
Maximum aantal LPD poorten: Het aantal LPD poorten van de afdrukserver op afstand is: 2-64. De default is acht. Na een TCP/IP herstart wordt de Line Printer Poort Driver gelanceerd:
LPRPORTD versie 2.0.6 wordt uitgevoerd (LPR versie 1.0). 8 printerkanalen worden ondersteund.
Met UNIX achtige utilities als lpq (line printer queue) kunt wachtrijen onderzoeken en bewerken.
[F:\]lpq -plp -szolder no entries
Dit deel stelt het programma UltiMail voor email en NewsReader/2 voor nieuwsgroepen in. U kunt het overslaan. Recente versies van Netscape en andere programma's bieden veel meer.
Pagina van 1 Post met UltiMail of vanuit NewsReader/2.
Postomgeving: U hebt de keus uit:
Alleen LAN
Alleen Internet
LAN en Internet
Ik koos voor Alleen LAN (de post gaat naar de Linux sendmail).
Meerdere gebruikers voor dit werkstation: zo ja, dan kan om u Post-ID worden gevraagd.
Post-ID: sjoerd@visser.thuis (bij alleen LAN: gebruikersnaam@hostnaam.domein)
Elke keer om Post-ID vragen: zinvol bij meerdere gebruikers.
Pagina 2 van Post met UltiMail of vanuit NewsReader/2.
Hoofddirectory postopslag: \TCPIP\UMAIL\MailStor is de default. Een alternatief kan H:\home\sjoerd\MAIL zijn.
Elke keer om POP-gegevens vragen: is veiliger bij meerdere gebruikers.
POP-postserver: pop3.provider.nl (bij mij "zolder")
POP-ID: Uw POP3 gebruikersnaam
POP wachtwoord: POP3 wachtwoord
Sendmail is de Mail Delivery Agent (MDA) van Eric P. Allman. Het programma is open source. Op ftp sites als LEO zijn complete versies van sendmail versie 8 te vinden. Deze maken gebruik van de emx bibliotheek. De bij OS/2 Warp 4 geleverde sendmail heeft hierbij vergeleken maar zeer beperkte mogelijkheden. Ze worden in een Redbook beschreven.
Sendmail ontvangt als server email op de bekende poort 25 en geeft het door aan de eindbestemming op het LAN of het internet. De serveerdiensten - het ontvangen en doorgeven van post - staan ten dienste van email clients die sendmail als hun smtp server zien en andere Mail Delivery Agents die sendmail als mailrouter gebruiken.
Zo zal Demon Internet bij een internetverbinding standaard de sendmail op mijn smtp poort benaderen om de email af te leveren. De sendmail op de OS/2 PC treedt dan als server op. Smtp heeft de voorkeur omdat naast sjoerd@sjoerd-visser.demon.nl ook anderen (naam@hostnaam.domein) van het account gebruik kunnen maken. Met een POP3 server bereik je dat niet.
Maar sendmail doet veel meer, m.n. de bewerking van briefhoofden en enveloppen waar de mailrouting dit verlangt. Dit is vooral voor bedrijven en internet providers van belang. Maar deze features maken dat de configuratie van sendmail geen sinecure is.
Elders wordt ingegaan op de sendmail versie 8 voor OS/2. en de toepassing van sendmail in batch-bestanden.
Hieronder wordt de configuratie sendmail versie 2.0 van OS/2 Warp besproken. Gebruikt u sendmail op het internet dan zou ik deze update invoeren. Voor details zie: Sendmail HOWTO (voor OS/2).
Sendmail parameters
Als u de post "met Ultimail of vanuit NewsReader/2" wilt versturen vinkt u deze aan. Deze sendmail instellingen worden in \mptn\etc\sendmail.uml bewaard.
Op termijn is kan het handiger voor u zijn om voor een "Ander postprogramma" te kiezen. U hebt dan met \mptn\etc\sendmail.cf te doen. Het gaat om de Mail Handler voor de Lokale post. Nu is het vreemde dat de in \mptn\etc\sendmail.cf genoemde Mail Handler (mail.exe ) ontbreekt. Voorlopig moet u daarom Ultimail gebruiken. Door de vraag naar Sendmail automatisch starten met ja te beantwoorden, wordt dat voor u geconfigureerd.
De sendmail parameters in Autostart zijn dan:
sendmail -bd -q30m \CF:\MPTN\ETC\sendmail.uml
De -bd slaat op de daemon mode (sendmail staat stand-by om andere MDA's en email clients te bedienen), -q30m betekent dat sendmail om de 30 minuten de post probeert te bezorgen en \CF:\pad\sendmail.cf geeft het configuratiebestand aan.
Mijn TCP/IP configuratie notebook gaat wel eens de mist in met een blijvende verwijzing naar sendmail.uml als ik met andere Mail Handlers experimenteer!
De relevante fragmenten uit sendmail configuratiebestand zijn groen gekleurd.
Mqueue directory: f:\mptn\etc\mqueue
# Queue directory - this must be changed if TCP/IP is moved! OQf:\mptn\etc\mqueue
Waar sendmail de nog niet verzonden post bewaard. Deze moet u waarschijnlijk nog aanmaken. Overweeg \var\spool\mqueue. Sendmail -q leegt de cache; indien mogelijk, want zonder internet verbinding of gateway zijn alleen de lokale bestemmingen te bereiken. Lokale post wordt door een Mail Handler opgevangen.
Post directory: f:\tcpip\umail\server\inbox (of f:\mptn\etc\mail)
Postprogramma: f:\tcpip\umail\umailer.exe (of f:\tcpip\bin\mail.exe)
In sendmail.cf komen ze als volgt terug:
# SMTP, Local and Program Mailer specifications # Added F=F to Mlocal TAB Msmtp, P=[IPC], F=mDFMuX, S=10, R=0, A=IPC $h # Mlocal, P=C:\TCPIP\UMAIL\umailer.exe , F=Flsm, S=10, R=0, A=f:\mptn\etc\mail f:\TCPIP\UMAIL\SERVER\INBOX -to $u Mlocal, P=f:\tcpip\bin\mail.exe, F=lsmDFP, S=10, R=0, A=f:\mptn\etc\mail $u Mprog, P=f:\os2\cmd.exe, F=lsDFM, A= /C $u
De ingang voor de lokale mailer (Mlocal) umailer.exe is hier geremd. De lange opdrachtregels voor de mailers eindigen met een makro voor de gebruiker ($u). OS/2 is geen multi-user systeem, maar TCP/IP en sendmail veronderstellen meerdere gebruikers op een werkstation. Umailer werd hier op C gezien.
In beide gevallen moet u het antwoorddomein en de SMTP-postgateway invullen:
Antwoorddomein: Geef de naam op van het domein waarin de postserver zich bevindt. Dat is dus afhankelijk van de door u gewenste Postomgeving. Voorbeelden zijn:
thuis (voor het LAN met domein "thuis").
sjoerd-visser.demon.nl (LAN en Internet, vast IP adres bij Demon)
compuserve.com (LAN en Internet, geen vast IP adres)
Het gaat om de DI variabele in sendmail.cf. Het is geen verplicht veld.
SMTP-postgateway: Geef de naam op van de SMTP server die de post verder verstuurd (Relay). Een compilatie van helpteksten schept verwarring:
# The fully qualified (with domain) name of the internal gateway # Specifies a gateway to which mail is delivered instead of direct delivery # who I send unqualified names to (null means deliver locally) DRpost.demon.nl
Met een dial-up verbinding kunt u niet uren aan het internet verbonden zijn om moeilijk thuis te brengen email door sendmail te laten bezorgen. Die klus kan ook de sendmail van de internet provider klaren. Voor dit doel zou u wellicht van de DV variabele gebruik kunnen maken.
# Specifies the hostname of your mail gateway. # Mail that cannot be delivered directly is sent to this address to be relayed. DVpost.demon.nl
IBM noemt DV "Your.External.Gateway" en DR "Your.Internal.Gateway"(Zie: hier). DV lijkt passender. Versie 8 van sendmail kent de variabele DS voor de smarthost, waar de post die niet lokaal onder te brengen is, naartoe wordt verstuurd. In de praktijk is dat de smtp server van uw ISP (of postgateway). De sendmail van de postgateway/ISP mag het dan verder uitzoeken.
# "Smart" relay host (may be null) DSsmtp:post.demon.nl
Enige concrete voorbeelden zijn:
zolder.thuis (de sendmail van de Linux computer, deze geeft het door aan de provider)
post.demon.nl (LAN en Internet, smtp server van Demon)
smtp.compuserve.com (LAN en Internet, smtp server van CompuServe classic)
Extra sendmail-domeinen :
Te gebruiken sendmail-domeinen: leeggelaten
Het gaat om andere domeinen dan het thuisdomein "DDthuis" die met de "DE" variabele in sendmail.cf aangegeven worden:
# DDYour.Domain DDthuis DEnaam.extra.sendmail.domein