# Perguntas e respostas

&reporting.bugs;

## Questões sobre Discagem

Eu não consigo fazer o &kppp; trabalhar. O &kppp; me informa de que o aplicativo pppd está morto ou que o tempo máximo para o modem acabou. O que está acontecendo?

Você leu este manual cuidadosamente? Aqui estão mais uma vez os erros mais comuns:

- Clique no botão Detalhes. O &kppp; te dará um excerto das mensagens do log do PPP (pode não funcionar em sistemas não-&Linux;, assim como em algumas distribuições &Linux;). O log lhe ajudará a localizar o erro.

- Esteja certo de que o pppd é o arquivo executável do pppd, e não um script.

- Tenha certeza de que o pppd tem privilégios de execução de superusuário. Você pode configurar este modo usando o comando ``chmod` `u+s pppd`` como superusuário.

- Esteja certo de que o seu arquivo `/etc/ppp/options` exista e que ele não contenha quaisquer entradas conflitantes. Se você estiver em dúvida, deixe este arquivo vazio.

- Esteja certo de que você não usou a opção `lock` como um argumento para o pppd (o &kppp; já está cuidando do travamento do dispositivo do modem).

- Remova a opção `travar` de ambos os seus arquivos `/etc/ppp/options` e `˜/.ppprc`!

- O Uso do link simbólico `/dev/modem` pode causar alguns conflitos. Elimine esta fonte de problemas usando o dispositivo real, &ie; `/dev/cuaX` ou `/dev/ttySX`.

  COM1 equivale a `ttyS0`, COM2 é `ttyS1` e assim por diante.

- Esteja certo de que você tem a permissão correta. Em caso de problemas você poderá executar isto primeiro como superusuário e então depois, quando tudo estiver trabalhando bem dar-lhe uma permissão menos preocupante, se você não puder executar o &kppp; com privilégios de superusuário. A maneira adequada de proceder seria provavelmente a criação de um grupo de modem.

- Você pode estar executando o pppd muito cedo, &ie; antes que o servidor remoto esteja pronto para negociar uma conexão PPP. Se você está usando um script para login, você deve usar o terminal interno para verificar seu procedimento de login. Alguns provedores irão requerer de você o uso de um comando como `Send` ou `Send ppp` para iniciar o PPP. Alguns usuários relataram que eles tinham que acrescentar aos seus scripts os comandos `Pause 1` or `Pause 2` para resolver conflitos de temporização.

Se nada mais ajuda, você pode obter alguma informação de depuração dos seus logs de sistema através do comando:

    # tail /var/log/messages

o pppd morreu - o sistema remoto é necessário para autenticar-se...

Mensagem de erro típica no registro do sistema:

    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.)

Pode-se dizer que existem duas causas para este problema:

- O `/etc/ppp/options` contém a opção `auth` . Simplesmente comente-o colocando o sinal de # na frente e tente novamente.

- Seu sistema já possui uma rota padrão. Você configurou uma rede local? Neste caso, versões recentes do pppd se comportarão como se a opção `auth` fosse especificada. Para sobrescrever isto, você pode adicionar `noauth` nos argumentos do pppd, no diálogo de configuração do kppp. Alternativamente, você poderia baixar sua rede local antes de discar. Ficaria agradecido se alguém me fornecesse as instruções de como combinar pacificamente as duas conexões de rede.

O pppd more com o Kernel 2.4.x do Linux

Mensagens Típicas de erro no registro do sistema:

    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.

Instale o pppd 2.4.0b1 ou superior. Veja em `Documentation/Changes` nos fontes do kernel para mais informações.

Porque o &kppp; me diz Desculpe, não posso abrir o modem?

Isto significa que o &kppp; não tem permissão para abrir o dispositivo de modem ou que você selecionou um dispositivo de modem no diálogo de Modem que não é válido. Primeiro, esteja certo de que você selecionou corretamente o dispositivo de modem. Uma vez que o dispositivo correto de modem tenha sido selecionado, você deve dar ao &kppp; a devida permissão para acessar o dispositivo de modem e para modificar o arquivo `/etc/resolv.conf` no caso de você querer que o &kppp; configure corretamente o DNS para você. Se você pode executar o &kppp; com permissões de root, isto resolveria todos os seus problemas de acesso, se não você terá que determinar quais permissões de acesso são mais adequadas para os seus propósitos. Para dar ao &kppp; as permissões de root faça o seguinte:

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

Porque o &kppp; me diz que ele não pode criar um arquivo de trava do modem?

Isto significa, na maioria das vezes, que você instalou o &kppp; sem o 'bit' do SETUID ativo, enquanto que você, a pessoa que está executando o &kppp;, não tem permissões de escrita para a pasta do arquivo de bloqueio que é, por padrão, a `/var/lock`. Este é, por exemplo, o caso dos sistemas &RedHat;. Verifique a janela do modem para a localização exata que escolheu. A solução é fácil -- execute o &kppp; SETUID se puder fazer isso, dê permissões aos usuários normais para a pasta `/var/lock` ou crie um grupo do modem que terá acesso ao arquivo em `/var/lock`.

Porque o &kppp; está instalado com o bit SETUID ativo?

Não existe necessidade para o 'bit' SETUID, se você souber um pouco de administração de sistemas &UNIX;. Basta criar um grupo modem e adicionar todos os usuários que queira dar acesso ao modem a esse grupo, dando ao dispositivo do modem as permissões de leitura e escrita para esse grupo. Se quiser também que a configuração do DNS funcione com o &kppp;, então o arquivo `/etc/resolv.conf` também deverá ter permissões de leitura e escrita para os membros desse grupo. O mesmo se aplica ao `/etc/ppp/pap-secrets` e ao `/etc/ppp/chap-secrets`, se quiser usar o suporte incorporado de PAP ou de CHAP, respectivamente.

O time do &kppp; tem feito ultimamente um lote de trabalho para fazer o &kppp; independente da configuração de setuid. Mas você deverá decidir se você irá instalar e como faze-lo.

Você pode querer ler também a seção Segurança.

O que eu faço quando o &kppp; para e espera, enquanto exibe a mensagem `Esperando OK`?

Você experimentou com a configuração de CR/LF? Tente CR, LF ou CR/LF.

Alternativamente, o seu modem pode precisar de algum tempo para responder à sua inicialização. Abra o diálogo de Comandos de Modem na aba de Modem e ajuste os atrasos de Pré-Init e de Pós-Init. Veja se você obtém sucesso ao aumentar drasticamente estes valores, e então faça algum ajuste fino depois.

A conexão trabalha bem, mas eu não posso iniciar quaisquer aplicativos!

Você provavelmente selecionou a opção Auto-configurar o Nome da Máquina, e o Servidor X teve problemas ao conectar a sua máquina recentemente nomeada. Se você realmente necessita desta opção (e as chances são de que você realmente não precisa), infelizmente você terá que configurar por si mesmo as autorizações apropriadas. Enviar o comando ``xhost` `+`` antes de iniciar a conexão faria o trabalho, mas esteja avisado dos riscos de segurança envolvidos, uma vez que isto dará efetivamente a qualquer um o acesso ao seu Servidor X.

O &kppp; informa que a conexão foi feita com sucesso, mas o &konqueror; diz apenas Host hostname desconhecido, e o &Netscape; informa Este servidor não tem uma entrada DNS.

Tente Pingar um outro servidor no seu endereço IP &eg; ``ping``195.0.254.76`` . Se isto funciona, você poderia tentar o seguinte:

- Verifique se você forneceu ao &kppp; pelo menos um endereço de DNS.

- Verifique o conteúdo do arquivo `/etc/host.conf`. Deverá haver uma linha dizendo alguma coisa similar a `order hosts, bind`. A palavra chave `vincular` avisa a biblioteca de resolvedor de endereços para incluir uma consulta de nome de servidor quando for fazer uma busca endereço. Se não houver uma linha como essa, tente colocar uma.

Como eu faço o &kppp; enviar um \n ou um \r?

Apenas envie uma sequência vazia tal como a que está no seguinte script:

    Send                            # send an empty string
    Expect           ID:
    Send             itsme
    Expect           word:
    Send             forgot
    Expect           granted
    Send             ppp

Como eu posso fazer com que o &kppp; deixe de dar a mensagem de erro: Não posso criar o arquivo de trava?

Isto acontece porque você não tem permissões para criar um arquivo de trava. Se você escolher usar um arquivo de trava, você deve ter permissão de escrita na pasta (tipicamente `/var/lock`). Isto não é problema se você deu ao &kppp; permissões de setuid. Por favor leia a seção sobre Arquivos de trava.

Porque o meu modem está fazendo tanto barulho quando ele está discando?

Clique em Setup, e então em Modem. Você pode controlar o volume do auto-falante do modem aqui em três passos: Desligado, médio e alto. Para a maioria dos modems, médio ou alto resultam no mesmo volume. Se a mudança desta configuração não funciona, tenha certeza de que as configurações corretas para o seu modem estão especificadas em Configuração e em Comandos do Modem .

Eu alterei o ajuste do volume do modem para Off, e verifiquei os comandos do modem, mas eu continuo escutando um ruido irritante durante a discagem. Porque?

A string de inicialização do volume pode ser perdida se o seu modem não puder lidar com a velocidade com que ele recebe comandos do &kppp;. Aumente o valor do Atraso de Pós-Init em Configuração, Modem, Comandos do Modem.

O &kppp; permanece relatando velocidades não usuais para modems, tais como 115200 ou 57600.

Muitos modems relatam apenas a velocidade da linha serial e não a velocidade sobre a linha telefônica, por padrão. Você deve configurar estes modems para relatar a verdadeira velocidade da linha adicionando alguns comandos à string de inicialização, ou à string de discagem. Para muitos modems, o comando é `ATW2`. Se você quiser adicionar este comando à string de discagem ( a qual normalmente começa com `ATD`), a nova string de discagem deveria ser `ATW2D`.

Porque o &kppp; informa Velocidade desconhecida?

Os novos modems frequentemente tem mensagens de conexão muito complexas como `CONNECT LAP.M/V42.bis/115000:RX/31200:TX` e o &kppp; não pode analisar esta mensagem corretamente. Habilite a opção Show Log e você verá a velocidade da conexão.

Eu obtenho uma velocidade de conexão baixa.

Se você não está satisfeito com a velocidade do modem, esteja certo de que você configurou a velocidade de conexão (você pode encontrar este ajuste em Configuração,Dispositivo, Velocidade de conexão) para 57600 ou mais. Tenha certeza de que as suas portas seriais suportam altas velocidades. Muitos outros sistemas antigos baseados no i486 não trabalham corretamente se voc configurar a velocidade do modem para 115200. Se você tem uma UART 8250, ela não trabalhará. Se você tem uma 16550ou uma 16550A, elas trabalharão sem problemas.

Adicionalmente, você deve consultar o manual do seu modem para ver quais sequências de inicialização habilitam modos de alta velocidade.

Eu obtenho uma velocidade de conexão REALMENTE baixa!

Se os dados fluem numa taxa que é de apenas uns poucos bits por segundo, você deve verificar a configuração de seu hardware. Se mover o seu mouse acelera a transmissão, isto é definitivamente uma questão de hardware!

Você pode obter alguma informação sobre a sua porta serial com o comando ``setserial` `-a /dev/ttySx`` e verificar por conflitos de interrupção com outros componentes do seu sistema.

Minha linha telefônica precisa de discagem por pulsos ao invés de discagem por tom (ou vice-versa). Como eu modifico isso?

Você precisa modificar a sua string de discagem do modem. Quase todos os modems suportam os seguintes comandos AT:

`ATDT`

  Seleciona discagem por tom

`ATDP`

  Seleciona discagem por pulso

## Questões sobre regras de custos telefônicos

Como eu escrevo um arquivo de regras de custos telefônicos?

Apenas siga o arquivo `MODELO` de regras fornecido com o &kppp;. Você deverá encontrar uma cópia no diretório `$KDEDIR/doc/HTML/seuidioma/kppp/`. Use a opção `-r` na linha de comando do &kppp; para verificar a sintaxe de seu arquivo proposto de regras.

Eu escrevi uma regra de custo telefônico para a minha região. Para onde eu posso envia-la para que outros possam usá-la?

Pode o meu arquivo de regas de custos telefônicos conter unidades de tempo fracionárias, tais como "(0.17, 45.5)"?

Sim, isto é possível. Mas você não deve usar unidades de tempo menores que um decimo de segundo, porque isto resultaria em alto uso da CPU, o que você provavelmente não repararia em uma CPU moderna.

Meu país possui outros feriados itinerantes além da páscoa.

Neste caso, você precisa escrever um novo código que permita a computação daquele feriado. Por favor, veja o `ruleset.cpp` e emule o exemplo easter. Então envie nos patches!.

## Questões sobre os Logs de sistema

Eu vejo uma mensagem dizendo Serial line is looped back. O que isto significa?

Resposta curta: Você não pode iniciar o software do PPP no sistema remoto.

Os logs exibem Sinal 15

Se você vê as seguintes linha, você provavelmente recebeu apenas um erro de tempo esgotado para o modem do &kppp;. Ele esteve esperando a interface do PPP ser iniciada e depois finalizada, após o tempo máximo para o modem. O pppd foi sinalizado para finalizar, com o sinal de número 15, &ie; SIGTERM.

    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.

O que significa Receive serial link is not 8-bit clean

O Daemon PPP está alarmado com o fato de que todos os dados que ele recebe possuem o bit 8 setado para zero. Na maioria dos casos isto indica simplesmente que o servidor remoto PPP não está executando ainda. Você deverá ser confrontado por um prompt de login que ecoa todos os dados enviados pelo seu aplicativo pppd.

e não posso localizar o módulo ppp-compress? O que é isso?

Você vê as seguintes mensagens?

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

Apenas adicione as linhas:

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

no seu arquivo `/etc/conf.modules`.