# Spørgsmål og svar

&reporting.bugs;

## Spørgsmål om opkald

Jeg kan ikke få &kppp; til at fungere. &kppp; siger at pppd er død eller at en tidsgrænse er overskredet. Hvad er det der sker?

Har du læst denne manual omhyggeligt? Her er endnu en gang de almindeligste problemer:

- Klik på knappen Detaljer. &kppp; viser så et uddrag fra PPP-logmeddelelser (måske fungerer dette ikke på andre systemer end &Linux;, eller til og med ikke på visse &Linux;-distributioner). Loggen hjælper dig med at spore fejlen.

- Sørg for at pppd er den rigtige pppd-binære fil og ikke et script

- Sørg for at pppd er setuid `root`. Du kan vælge denne tilstand ved at skrive ``chmod` `u+s pppd`` som `root`.

- Sørg for at filen `/etc/ppp/options` findes og at den ikke indeholder nogle indgange som kan forårsage konflikter. Hvis du tvivler så lad den være tom.

- Sørg for at du ikke bruger tilvalget `lock` som et argument til pppd (&kppp; håndterer allerede låsning af enheden).

- Fjern tilvalget `lock` både fra filen `/etc/ppp/options` og `˜/.ppprc`!

- Brug af det symbolske link `/dev/modem` kan forårsage konflikter. Eliminér denne fejlkilde ved at bruge den rigtig enhed, dvs.`/dev/cuaX` eller `/dev/ttySX`.

  COM1 er det samme som `ttyS0`, COM2 er `ttyS1` og så videre.

- Sørg for at du sætter de rigtige rettigheder. Hvis du har problemer vil du måske du først prøve at køre som root, og senere, når alting fungerer rigtigt vælge mindre skadelige rettigheder hvis du ikke har mulighed for at køre &kppp; setuid `root`. Den rigtige måde at fortsætte er formodentlig at oprette en `modem`-gruppe.

- Du starter måske pppd for tidligt, dvs. inden fjernserveren er klar at forhandle om en PPP-tilslutning. Hvis du bruger et indlogningsscript, bør du bruge den indbyggede terminal til at verificere indlogningsproceduren. Visse leverandører kræver at du angiver en enkel `Send` eller `Send ppp` for at starte PPP. Visse brugere rapporterede til og med at de var tvunget til at tilføje `Pause 1` eller `Pause 2` til deres script for at løse tidskonflikter.

Hvis ingenting hjælper, kan du hente en del fejlsøgningsinformation fra systemloggen ved at skrive:

    # tail /var/log/messages

pppd died - The remote system is required to authenticate itself ...

Typisk fejlmeddelelse i systemloggen:

    pppd[699]: The remote system is required to authenticate itself
    pppd[699]: but I couldn't find any suitable secret (password) for it to use to do so.
    pppd[699]: (None of the available passwords would let it use an IP address.)

Så vidt jeg kan forstå findes der to grunde til problemet:

- `/etc/ppp/options` indeholder alternativet `auth`. Indtast helt enkelt kommentartegnet `#` inden det og forsøg igen.

- Systemet har allerede en standard route. Har du sat et lokalt netværk op? Hvis der er tilfældet, opfører nyere versioner af pppd sig som om `auth` var blevet angivet. For at sætte dette ud af kraft, kan du tilføje `noauth` til pppd-argumentet i Kppp:s indstillingsdialog. Som et alternativ skulle du kunne nedkoble det lokale netværk inden du ringer op. Jag ville være taknemlig om nogen kunne give instruktioner om hvordan man får de to netværkstilslutninger til at funger smertefrit sammen.

pppd dør med 2.4.x Linux-kernea

Typisk fejlmeddelelse i systemloggen:

    pppd[1182]: pppd 2.3.11 started by user, uid 500
    pppd[1182]: ioctl(PPPIOCGFLAGS): Invalid argument
    pppd[1182]: tcsetattr: Invalid argument
    pppd[1182]: Exit.

Installér pppd 2.4.0b1 eller senere. Se `Documentation/Changes` i kernens kildekode for mere information.

Hvorfor siger &kppp; Kan desværre ikke komme til modemet.?

Dette betyder at &kppp; ikke har rettighed til at åbne modemenheden eller at du valgte en modemenhed i dialogen Modem som ikke er gyldig. Sørg for at du har valgt den rigtige modemenhed. Når du er sikker på at du har valgt den rette modemenhed, skal du give &kppp; rettigheder til at komme til modemenheden og til at kunne ændre `/etc/resolv.conf` hvis du ønsker at &kppp; skal indstille DNS for dig på rigtig måde. Hvis du har råd til at køre &kppp; setuid `root` skulle det løse alle adgangsproblemer, ellers skal du regne ud hvad de rigtige tilladelser er for dine formål. For at give &kppp; setuid `root` rettigheder, gøres følgende:

    % su root
    # chown root:root $KDEDIR/bin/kppp
    # chmod +s $KDEDIR/bin/kppp
    # exit

Hvorfor siger &kppp; at den ikke kan oprette en låsefil for modemet?

Dette betyder i de fleste tilfælde at du har installeret &kppp; uden at SETUID-bitten er sat, mens du som personen der kører &kppp;, ikke har skriverettigheder til låsefil-mappen, som normalt er `/var/lock`. Dette er for eksempel tilfældet for &RedHat;-systemer. Kig i modemdialogen efter det nøjagtige sted du har valgt. Løsningen er enkel, kør enten &kppp; med SETUID hvis du har råd til det, giv almindelige brugere skriverettigheder i `/var/lock` eller opret en modemgruppe som har adgang til `/var/lock`.

Hvorfor installeres &kppp; med SETUID-bitten sat?

Der er intet behov for SETUID-bitten, hvis du kan lide &UNIX;-systemadministration. Opret helt enkelt en `modem`-gruppe, tilføj alle brugere som du vil give adgang til modemet til denne gruppen og gør modemenheden læse- og skrivbar for gruppen. Hvis du også ønsker at DNS-indstillingen skal fungere med &kppp;, så skal `/etc/resolv.conf` være læse- og skrivbar for medlemmer i denne gruppe. Det samme gælder for `/etc/ppp/pap-secrets` og `/etc/ppp/chap-secrets` hvis du vil bruge den indbyggede PAP- eller CHAP-understøttelse.

Kppp-gruppen har arbejdet meget med at gøre &kppp; setuid-sikker den seneste tid. Men det er dig som bestemmer om du installerer, og hvordan du installerer.

Du vil måske også læse afsnittet Sikkerhed.

Hvad gør jeg når &kppp; kun ventar og viser meddelelsen: `Ventar på O.k.`

Har du leget med CR/LF-indstillingerne? Forsøg med CR, LF eller CR/LF.

Alternativbehøver dit modem måske en vis tid til at svare på initieringen. Åbn dialogen Modemkommandoer i fanebladet Modem og justér Forsinkelse inden init og Forsinkelse efter init. Undersøg om det lykkes hvis du øger deres værdi radikalt, og udfør finjustering senere.

Tilslutningen fungerer godt, men jeg kan ikke starte nogen programmer!

Du har formodenligt valgt Ændr maskinens navn automatisk til det for IP-adressen, og X-serveren har problemer med at tilslutte til din nyligt omdøbte maskine. Hvis du virkelig behøver dette (og der er god chance for at du ikke gør det), er du desværre på egen hånd når det gælder at indstille passende identificering. Skriv ``xhost` `+`` inden tilslutningen startes skulle klare det, men vær advaret mod sikkerhedsrisici som hører sammen med dette, eftersom det her giver hvem som helst fuldstændig adgang til din X-server.

&kppp; rapporterer at tilslutning lykkedes, men &konqueror; siger kun Ukendt værtsmaskine `værtsmaskinenavn`, og &Netscape; rapporterer The server does not have a DNS entry.

Forsøg at kalde en anden server med dets IP-nummer, f.eks. ``ping` `195.0.254.76``. Hvis det fungerer, kan du forsøge med følgende:

- Kontrollér om du har sørget i det mindste for en DNS-adresse til &kppp;.

- Kontrollér indholdet i filen `/etc/host.conf`. Der skal findes en linje som lyder cirka som `order hosts, bind`. Nøgleordet `bind` fortæller opløsningsbiblioteket at det skal inkludere en forespørgsel til en navneserver når det udfører et adresseopslag. Hvis en sådan linje ikke findes, så forsøg at tilføje den.

Hvordan får jeg &kppp; til at sende et \n eller et \r?

Send en tom streng, som i følgende script:

    Send                            # sende en tom streng
    Expect           ID:
    Send             itsme
    Expect           word:
    Send             forgot
    Expect           granted
    Send             ppp

Hvordan får jeg &kppp; til at holde op med at klage over den kan ikke oprette låsefil?

Dette hænder fordi du ikke har rettigheder til at oprette en låsefil. Hvis du vælger at bruge en låsefil, skal du have skriverettigheder til mappen (typisk `/var/lock`). Det her er ikke noget problem hvis du har givet &kppp; setuid-rettigheder. Læs gerne afsnittet om Låsefiler.

Hvorfor lyder modemet så højt når det ringer op?

Klik på Indstillinger, og derefter Modem. Her kan du indstille modemets lydstyrke i tre trin: Fra, middelhøj og høj. For de fleste modemer, giver middelhøj og høj samme lydstyrke. Hvis det ikke hjælper at ændre denne indstilling, så sørg for at de rigtige indstillinger for modemet angives i Indstillinger, Modem, Modemkommandoer.

Jeg slukkede for modemlyden og kontrollerede modemkommandoerne, men jeg hører stadigvæk den utrolig trælse lyd ved opkald. Hvorfor?

Lydstyrkeinitieringsstrengen kan gå tabt hvis om modemet ikke kan håndtere hastigheden som det tager imod kommandoer fra &kppp;. Øg værdien på Forsinkelse efter init i Indstillinger, Modem, Modemkommandoer.

&kppp; rapporterer hele tiden usædvanlige modemhastigheder som 115200 eller 57600

Mange modemer rapporterer normalt kun den serielle portens hastighed og ikke hastigheden på telefonlinjen. Du skal indstille disse modemer så de rapporterer den sande linjehastighed ved at tilføje nogle kommandoer til modemets initierings- eller opkaldsstrenge. For mange modemer er dette kommandoen `ATW2`. Hvis du vil tilføje det til opkaldsstrengen (som normalt begynder med `ATD`), skal den nye opkaldsstreng være `ATW2D`.

Hvorfor rapporterer &kppp; Ukendt hastighed?

Nye modemer har ofte komplekse tilslutningsmeddelelser som `CONNECT LAP.M/V42.bis/115000:RX/31200:TX`, og &kppp; kan ikke tolke disse meddelelser rigtigt. Aktivér Vis logvindue så ser du tilslutningshastigheden.

Jeg får en langsom tilslutningshastighed

Om du ikke er tilfreds med modemhastigheden, så sørg for at du har indstillet tilslutningshastigheden (du kan nå den ved at klikke på Indstillinger, Enhed, Tilslutningshastighed) til 57600 eller højere. Sørg for at den serielle port understøtter højere hastigheder. Mange ældre systemer baserede på i486 fungerer ikke rigtigt hvis du indstiller hastigheden til 115200. Hvis du har en gammel 8250 UART-kreds, fungerer det ikke. Hvis du har en 16550 eller 16550A skal det fungere uden problemer.

Desuden bør du konsultere modemets håndbog for at lede efter initieringsstrenge som aktiverer højhastighedstilstand.

Jeg får en RIKTIG langsom tilslutningshastighed!

Hvis data dropper ind med en hastighed på nogle få byte pr sekund, bør du kontrollere indstillingerne af hardware. Hvis hastighedten øger når du flytter musen er det definitivt en hardware-spørgsmål!

Du kan få fat i en del information om din serielle port med ``setserial` `-a `/dev/ttySx``` og kontrollere om der findes stoppunktkonflikter med andre komponenter i systemet. Indstillingscentralens modul Information kan også være til hjælp i dette tilfælde.

Min telefonlinje kræver pulsvalg i stedet for tonevalg ved opkald (eller modsat). Hvordan ændrer jeg det?

Du skal ændre modemets opkaldsstreng. Næsten alle modemer understøtter følgende AT-kommandoer:

`ATDT`

- Vælger tonevalg

`ATDP`

- Vælger pulsvalg

## Spørgsmål om omkostningsregler for telefonsamtale

Hvordan skriver jeg en regelfil for telefonomkostninger?

Følg regelfilen `TEMPLATE` som følger med &kppp;. Du bør kunne finde en kopi i `$KDEDIR/doc/HTML/`sv`/kppp/`. Brug kommandolinjetilvalget `-r` med &kppp; for at kontrollere syntaksen i din foreslåede regelfil.

Jag har skrevet en regelfil for telefonomkostninger for mit område. Hvor kan jag sende den så andre kan bruge den?

Kan min regelfil for telefonomkostninger indholde tidsenheder med decimaler som "(0.17, 45.5)"?

Ja, det er muligt. Men du bør ikke bruge usædvanligt korte tidsenheder under en tiendels sekund, eftersom det ville forårsage større belastning på CPU'en, selvom det formodentlig ikke mærkes på en moderne CPU.

I mit land fejres andre højtider end påske som flytter sig.

I dette tilfælde skal du skrive ny kode som tillader at denne helligdag beregnes. Var rar at kigge i `ruleset.cpp` og emulere eksemplet med påske. Send siden ind til programretterne.

## Spørgsmål om systemloggerne

Jeg ser en meddelelse som siger Serial line is looped back. Hvad betyder det?

Det korte svar: Du startede ikke PPP-programmet på det andet system.

Loggene viser Signal 15

Hvis du ser følgende linjer, har du formodentlig præcis fået en fejl afhængig på grund af at en tidsgrænse blev overskredet fra &kppp;. &kppp; har ventet på at PPP-grænsefladen skal aktiveres og gav op efter den angivne tidsgrænse. Et signal med signalnummer 15, dvs. SIGTERM, sendtes til pppd for at den skulle afsluttes.

    pppd[26921]: pppd 2.3.5 started by me, uid 500
    pppd[26921]: Using interface ppp0
    pppd[26921]: Connect: ppp0 <--> /dev/ttyS0
    pppd[26921]: Terminating on signal 15.
    pppd[26921]: Connection terminated.
    pppd[26921]: Exit.

Hvad gælder for Receive serial link is not 8-bit clean?

PPP-dæmonen er urolig over det faktum at alle data som den tager imod har bit 8 sat til nul. I de fleste tilfælde betyder det helt enkelt at PPP-serveren i den anden ende ikke kører endnu. Du kan stadigvæk blive konfronteret med et indlogningsprompt som ekkoer alle data tilbage som sendes til den af din pppd.

og can't locate module ppp-compress? Hvad er det?

Ser du følgende meddelelse?

    modprobe: can't locate module ppp-compress-21
    modprobe: can't locate module ppp-compress-26
    modprobe: can't locate module ppp-compress-24

Læg blot linjerne:

    alias ppp-compress-21 bsd_comp
    alias ppp-compress-24 ppp_deflate
    alias ppp-compress-26 ppp_deflate

til i din `/etc/conf.modules`-fil.