26.5. Uitbeldienst
Terug | Hoofdstuk 26. Seriële communicatie | Volgende

## 26.5. Uitbeldienst

### Waarschuwing:

Vanaf FreeBSD 8.0 zijn de seriële poorten hernoemd van `/dev/cuadN` naar `/dev/cuauN` en van `/dev/ttydN` naar `/dev/ttyuN`. FreeBSD 7.X gebruikers moeten de documentatie aanpassen naar deze wijzigingen.

De volgende tips dienen voor het maken van een verbinding met een andere computer per modem. Dit is geschikt voor het opzetten van een terminalsessie met een gast op afstand.

Dit is nuttig bij het aanmelden op een BBS.

Dit soort verbinding kan extreem behulpzaam zijn om een bestand op het Internet te krijgen indien er problemen zijn met PPP. Indien FTP ergens voor nodig is en PPP kapot is, kan de terminalsessie voor FTP gebruikt worden. Vervolgens kan zmodem gebruikt worden om het naar de machine te verzenden.

### 26.5.1. Een gewone Hayes-modem wordt niet ondersteund, wat nu?

In feite is de hulppagina voor `tip` verouderd. Er is al een generiek belprogramma voor Hayes ingebouwd. Gebruik `at=hayes` in het bestand `/etc/remote`.

Het stuurprogramma voor Hayes is niet slim genoeg om enkele geavanceerde eigenschappen van nieuwere modems te herkennen. Berichten als `BUSY` (in gesprek), `NO DIALTONE` (geen kiestoon) of `CONNECT 115200` (verbinden 115200) verwarren het stuurprogramma. Schakel deze berichten uit bij gebruik van `tip` (door middel van `ATX0&W`).

Verder is de beltimeout voor `tip` 60 seconden. Het modem dient een lagere waarde te gebruiken om te voorkomen dat `tip` denkt dat er een probleem met de communicatie is. Probeer `ATS7=45&W`.

### 26.5.2. Hoe deze `AT`-commando's in te geven?

Maak een zogenaamde “directe” regel in het bestand `/etc/remote` aan. Als het modem bijvoorbeeld aan de eerste seriële poort, `/dev/cuau0`, is gekoppeld, voeg dan de volgende regel toe:

    cuau0:dv=/dev/cuau0:br#19200:pa=none

Gebruik voor de mogelijkheid `br` de hoogst ondersteunde snelheid van het modem in bps. Typ hierna `tip cuau0` om een verbinding met het modem te maken.

Als alternatief kan `cu` als `root` met het volgende commando gebruikt worden:

    # cu
    	  -llijn
    	  -ssnelheid

De waarde `lijn` is de seriële poort (bijvoorbeeld `/dev/cuau0`) en `snelheid` is de snelheid (bijvoorbeeld `57600`). Als alle AT-commando's zijn ingevoerd, voer dan `~.` in om het programma te verlaten.

### 26.5.3. Het teken `@` voor de optie pn werkt niet!

Het teken `@` in de telefoonnummermogelijkheid vertelt `tip` om in `/etc/phones` naar een telefoonnummer te kijken. Maar het teken `@` is ook een speciaal teken in specificatiebestanden als `/etc/remote`. Gebruik een backslash om hieraan te ontsnappen:

    pn=\@

### 26.5.4. Hoe een telefoonnummer op de opdrachtregel te draaien?

Voeg een zogenaamde “generieke” regel aan het bestand `/etc/remote` toe. Bijvoorbeeld:

    tip115200|Bel elk telefoonnummer met 115200 bps:\
            :dv=/dev/cuau0:br#115200:at=hayes:pa=none:du:
    tip57600|Bel elk telefoonnummer met 57600 bps:\
            :dv=/dev/cuau0:br#57600:at=hayes:pa=none:du:

Hierna zijn onder andere de volgende mogelijkheden beschikbaar:

    # tip -115200 5551234

Indien `cu` boven `tip` geprefereerd wordt, dient een generieke regel voor `cu` gebruikt te worden:

    cu115200|Gebruik cu om elk nummer met 115200bps te bellen:\
    	:dv=/dev/cuau1:br#57600:at=hayes:pa=none:du:

Voer in:

    # cu 5551234 -s 115200

### 26.5.5. Dient de bps-snelheid telkens ingevoerd te worden?

Voeg een regel toe voor `tip1200` of `cu1200`, maar gebruik een bps-snelheid die geschikt is voor de br-mogelijkheid. `tip` meent dat 1200 bps een goede standaardwaarde is, hierdoor zoekt het naar een regel `tip1200`. Uiteraard hoeft 1200 bps niet gebruikt te worden.

### 26.5.6. Een aantal hosts met een terminalserver benaderen

Om niet iedere keer te hoeven wachten totdat er verbinding is en `CONNECT host` in te typen, kan de mogelijkheid `cm` van `tip` gebruikt worden. Als voorbeeld bieden de onderstaande regels in `/etc/remote` de mogelijkheid om `tip pain` of `tip muffin` in te typen om met de hosts `pain` of `muffin` te verbinden, en `tip deep13` om naar de terminalserver te gaan:

    pain|pain.deep13.com|Forresters machine:\
            :cm=CONNECT pain\n:tc=deep13:
    muffin|muffin.deep13.com|Franks machine:\
            :cm=CONNECT muffin\n:tc=deep13:
    deep13:Gizmonics Institute terminalserver:\
            :dv=/dev/cuau2:br#38400:at=hayes:du:pa=none:pn=5551234:

### 26.5.7. Kan tip meer dan één lijn voor elke site proberen?

Dit is een vaak een probleem als een universiteit een handvol modemlijnen en enkele duizenden studenten heeft die ze proberen te gebruiken.

Voeg een regel voor de universiteit toe in `/etc/remote` en gebruik `@` voor de mogelijkheid `pn`:

    grote-universiteit:\
            :pn=\@:tc=dialout
    dialout:\
            :dv=/dev/cuau3:br#9600:at=courier:du:pa=none:

Voeg hierna de telefoonnummers voor de universiteit toe aan `/etc/phones`:

    grote-universiteit 5551111
    grote-universiteit 5551112
    grote-universiteit 5551113
    grote-universiteit 5551114

Het commando `tip` probeert elk nummer in de volgorde van de lijst alvorens op te geven. Om de pogingen te herhalen, kan `tip` in een while-lus gedraaid worden.

### 26.5.8. Waarom moet Ctrl+P tweemaal worden ingedrukt om Ctrl+P éénmaal te versturen?

Ctrl+P is het standaard “forceer”-karakter, dat gebruikt wordt om `tip` te vertellen dat het volgende karakter letterlijk genomen dient te worden. Het forceerkarakter kan met de ontsnapping `~s`, wat “stel een variabele in” betekent, op elk ander karakter ingesteld worden.

Typ `~sforce=enkel-karakter` in gevolgd door een nieuwe regel. `enkel-karakter` is elk enkel karakter. Indien `enkel-karakter` weggelaten wordt, is het forceerkarakter het nulkarakter, wat door middel van Ctrl+2 of Ctrl+spatie verkregen kan worden. Een redelijke standaardwaarde voor `enkel-karakter` is Shift+Ctrl+6, die slechts op enkele terminalservers gebruikt wordt.

Het forceerkarakter kan op elk gewenst karakter ingesteld worden door het volgende op te nemen in het bestand `$HOME/.tiprc`:

    force=enkel-karakter

### 26.5.9. Alle ingevoerde tekst staat opeens in hoofdletters?

Waarschijnlijk is Ctrl+A ingedrukt, het “raisechar” van `tip`, dat speciaal voor mensen met een kapotte caps-lock toets is ontworpen. Gebruik `~s` zoals boven is aangegeven en stel de variabele `raisechar` op iets redelijks in. Het kan zelfs op hetzelfde als het forceerkarakter worden ingesteld, indien het onwaarschijnlijk is dat een van deze mogelijkheden ooit gebruikt wordt.

Hier volgt een voorbeeld voor het bestand `.tiprc` dat perfect is voor gebruikers van Emacs die Ctrl+2 en Ctrl+A vaak moeten gebruiken:

    force=^^
    raisechar=^^

De `^^` is Shift+Ctrl+6.

### 26.5.10. Hoe kan met `tip` bestanden worden verstuurd?

In de communicatie met een ander UNIX®-systeem kunnen bestanden verzonden en ontvangen worden met de commando's `~p` (put) en `~t` (take). Deze commando's draaien `cat` en `echo` op een systeem op afstand om bestanden aan te nemen en te verzenden. De syntaxis is:

`~p` lokaal-bestand [bestand-op-afstand]

`~t` bestand-op-afstand [lokaal-bestand]

Er wordt niet op fouten gecontroleerd, het is dus verstandig om een ander protocol te gebruiken, zoals zmodem.

### 26.5.11. Hoe kan zmodem samen met `tip` draaien?

Start om bestanden te ontvangen het verstuurprogramma aan de andere kant. Typ daarna `~C rz` om ze lokaal te ontvangen.

Start om bestanden te versturen het ontvangprogramma aan de andere kant. Typ daarna `~C sz bestanden` om ze naar het systeem aan de andere kant te versturen.

Terug | Omhoog | Volgende
26.4. Inbeldienst | Begin | 26.6. Seriële console opzetten