Este documento contém uma série de dicas e procedimentos para auxiliar o usuário a configurar o seu modem no sistema operacional linux. Note que nem todos os modems funcionam no linux. Alguns do tipo winmodem ainda não são suportados por linux, apesar do empenho das empresas que agora desenvolvem drivers para esta plataforma. 2. Procedimento Siga esta sequência para configurar o seu modem, mas veja que não são necessários todos os passos se o seu modem for compatível e/ou não houver conflito com outros dispositivos. Neste caso, basta apontar para a porta correta pelo control-panel e configurar a sua conexão pelo kppp. Para modems mais novos, alguns winmodems, etc... pode ser necessário instalar o driver ou recompilar o kernel. Veja mais informações sobre modems compatíveis para linux aqui Há também uma tradução, feita por Vagner Farias, aqui Verificados estes procedimentos, podemos iniciar o processo de configuração do seu modem: 2.1 Control-panel Entre como superusuário em qualquer interface gráfica, abra um xterm e digite: [root@localhost]# control-panel Dentro dele, procure por um ícone de telefone (Modem Configuration), e clique nele. Clique na porta a qual seu modem está conectado. Normalmente é a COM1 ou COM2. Se o seu modem estiver na COM3, verifique o tópico 2.3 setserial para configurar o seu modem. Clique no botão "OK". 2.2 KPPP Antes de configurar a sua conexão pelo kppp, verifique estes procedimentos: Como superusuário, edite o seu arquivo /etc/ppp/options e remova a linha lock. Aos usuários da versão 4.0 execute o seguinte comando, como superusuário: [root@localhost]# chmod a+s /usr/sbin/pppd Agora sim, como usuário normal, entre no X e chame o kppp, depois: clique em "Configuração"; aba "Contas": botão "Nova..."; Defina um nome para sua conexão: ex.: "Meu Provedor" Preencha o número do telefone do seu provedor: ex.: 123-4567 Na parte "Autenticação", escolha a opção adequada (script, PAP, CHAP, terminal). Na dúvida, consulte seu provedor Deixe a opção "Guardar password" selecionada aba "IP": Deixe selecionado "Endereço IP Dinâmico" NÃO selecione "Auto-configurar nome da host..." aba "DNS": Em "Nome do Domínio", preencha o nome do domínio do seu provedor (consulte-o para saber qual é). ex.: provedor.com.br No campo "Endereço IP do DNS" preencha o número do IP do provedor (consulte-o para saber qual é) . Se houver mais de um, clique no botão "Adicionar". ex.: 123.456.789.0 Selecione a opção "Desativar Servidores DNS existentes..." aba "Gateway": Deixe a opção "Gateway Padrão" selecionada (a não ser que seu provedor lhe dê um IP de gateway. (consulte-o). Deixe a opção "Colocar rota padrão neste Gateway" selecionada Clique no botão "OK"; aba "Dispositivo": Em "Dispositivo Modem", selecione "/dev/modem" Em "Velocidade de Ligação", selecione de acordo com a velocidade do seu modem (normalmente 38400 ou 57600) aba "Modem": Botão "Comandos do Modem"; em "String de Discagem", coloque ATDP caso a linha seja PULSO, ou ATDT caso a linha seja TOM clique no botão "OK" Clique no botão "OK"; Preencha seu "ID de login" (nome de usuário no provedor); Coloque a senha; Clique no botão "Ligar". OBS.: Caso tenha problemas com o kppp não salvar as configurações feitas, verifique as permissões do diretório ~/.kde e do arquivo ~/.kde/share/config/kppprc 2.3 setserial Este comando faz o ajuste fino das configurações finais do seu modem. Basta você chamar ele da linha de comando e apontar para o "device" ou porta de comunicação na qual está o seu modem. Por exemplo, se o seu modem estiver na ttyS1 (COM2), digite: [root@localhost]# setserial /dev/ttyS1 O resultado deve ser algo em torno de: /dev/ttyS1, UART: none, Port: 0x02f8, IRQ: 3 Ele mostra o dispositivo (ou porta de comunicação), seguido dos parâmetros do mesmo. No caso uart, porta de E/S e irq. Para adicionar ou alterar algum parametro, basta digitar ele no final do comando. Por exemplo: [root@localhost]# setserial /dev/ttyS1 irq 5 uart 16550a port 0x03e8 Agora execute novamente o setserial: [root@localhost]# setserial /dev/ttyS1 A saída será: /dev/ttyS1, UART: 16550a, Port: 0x03e8, IRQ: 5 Neste caso, estamos atribuindo a ttyS1 (COM2) os seguintes parametros: irq 5 -> IRQ do seu modem. uart 16550a -> uart do seu modem. port 0x03e8 -> Endereço de Entrada/Saída do seu modem. Informacões completas sobre este dispositivo podem ser obtidas através do comando: [root@localhost]# man setserial 2.4 pnpdump e isapnp Estes aplicativos servem para configurar modems plug and play ou outros dispositivos quando os mesmos apresentam algum conflito de irq, porta de entrada/saída, etc... Caso você precise deste aplicativo, chame-o digitando o comando: [root@localhost]# pnpdump -c > /etc/isapnp.conf Este procedimento, irá criar o arquivo de configuração /etc/isapnp.conf que contém as configurações disponíveis para os seus dispositivos de hardware. Basta você descomentar, em blocos, cada uma das opções para cada dispositivo apresentado. Lembre-se de que sempre que descomentar um bloco, comente o bloco anterior. Para testar, execute o comando: [root@localhost]# isapnp /etc/isapnp.conf Aqui temos um exemplo, de um trecho que fala de um modem US Robotics, num arquivo isapnp.conf: # Card 2: (serial identifier a1 c0 94 ca 8d 70 30 72 56) # Vendor Id USR3070, Serial Number 3230976653, checksum 0xA1. # Version 1.0, Vendor version 0.0 # ANSI string -->U.S. Robotics 56K Voice INT<-- # # Logical device id USR3070 # Device supports vendor reserved register @ 0x39 # Device supports vendor reserved register @ 0x3a # Device supports vendor reserved register @ 0x3c # Device supports vendor reserved register @ 0x3e # Device supports vendor reserved register @ 0x3f # # Edit the entries below to uncomment out the configuration required. # Note that only the first value of any range is given, this may be changed if required # Don't forget to uncomment the activate (ACT Y) when happy (CONFIGURE USR3070/3230976653 (LD 0 # Multiple choice time, choose one only ! # Start dependent functions: priority preferred # Fixed IO base address 0x02f8 # Number of IO addresses required: 8 (IO 0 (SIZE 8) (BASE 0x02f8)) # IRQ 3. # High true, edge sensitive interrupt (by default) (INT 0 (IRQ 3 (MODE +E))) # Start dependent functions: priority acceptable # Fixed IO base address 0x03f8 # Number of IO addresses required: 8 # (IO 0 (SIZE 8) (BASE 0x03f8)) # IRQ 4. # High true, edge sensitive interrupt (by default) # (INT 0 (IRQ 4 (MODE +E))) # Start dependent functions: priority acceptable # Fixed IO base address 0x03e8 # Number of IO addresses required: 8 # (IO 0 (SIZE 8) (BASE 0x03e8)) # IRQ 3, 4, 5 or 7. # High true, edge sensitive interrupt (by default) # (INT 0 (IRQ 3 (MODE +E))) # Start dependent functions: priority acceptable # Start dependent functions: priority acceptable # Fixed IO base address 0x02e8 # Number of IO addresses required: 8 # (IO 0 (SIZE 8) (BASE 0x02e8)) # IRQ 3, 4, 5 or 7. # High true, edge sensitive interrupt (by default) # (INT 0 (IRQ 3 (MODE +E))) # End dependent functions (NAME "USR3070/3230976653[0]{U.S. Robotics 56K Voice INT}") (ACT Y) )) # End tag... Checksum 0x00 (OK) Vamos comentar, agora cada uma das partes deste texto: # Card 2: (serial identifier a1 c0 94 ca 8d 70 30 72 56) # Vendor Id USR3070, Serial Number 3230976653, checksum 0xA1. # Version 1.0, Vendor version 0.0 # ANSI string -->U.S. Robotics 56K Voice INT<-- # # Logical device id USR3070 # Device supports vendor reserved register @ 0x39 # Device supports vendor reserved register @ 0x3a # Device supports vendor reserved register @ 0x3c # Device supports vendor reserved register @ 0x3e # Device supports vendor reserved register @ 0x3f # # Edit the entries below to uncomment out the configuration required. # Note that only the first value of any range is given, this may be changed if required # Don't forget to uncomment the activate (ACT Y) when happy (CONFIGURE USR3070/3230976653 (LD 0 # Multiple choice time, choose one only ! Este trecho dá uma breve explicação sobre o modem, no caso um U.S. Robotics 56K Voice INT # Start dependent functions: priority preferred # Fixed IO base address 0x02f8 # Number of IO addresses required: 8 (IO 0 (SIZE 8) (BASE 0x02f8)) ---> Aqui estão os dados, no caso I/O do seu modem (I/O = 0x02f8). # IRQ 3. # High true, edge sensitive interrupt (by default) (INT 0 (IRQ 3 (MODE +E))) ---> Aqui estão os dados, no caso IRQ do seu modem (IRQ = 3). Isto é um bloco de dados. Este aqui está descomentado, pois as linhas que contém os ( dados ) estão descomentados. O próximo bloco é: # Start dependent functions: priority acceptable # Fixed IO base address 0x03f8 # Number of IO addresses required: 8 # (IO 0 (SIZE 8) (BASE 0x03f8)) ---> Dados comentados não sendo utilizados # IRQ 4. # High true, edge sensitive interrupt (by default) # (INT 0 (IRQ 4 (MODE +E))) ---> Dados comentados não sendo utilizados Este bloco, não está sendo utilizado, visto que as linhas que contém os dados (linhas entre parênteses), estão comentados. O procedimento é salvar o arquivo e executar o comando: [root@localhost]# isapnp /etc/isapnp.conf Se ocorrerem erros, comente o primeiro bloco (no qual os dados estão descomentados), e descomente o segundo bloco (no qual os dados estão comentados). Execute novamente o comando: [root@localhost]# isapnp /etc/isapnp.conf Se ocorrerem erros, comente o bloco correspondente e descomente o próximo. E assim sucessivamente. # End dependent functions (NAME "USR3070/3230976653[0]{U.S. Robotics 56K Voice INT}") (ACT Y) )) # End tag... Checksum 0x00 (OK) Este trecho, finaliza a configuração do seu modem. ********************************************************************************** > > estou querendo implementar comunicacao ppp entre dois micros, > > utilizando os modems instalados em cada maquina, sendo que estes > > estao ligados por um cabo telefonico sem sinal de linha (diretao > > mesmo, entra uma ponta em cada maquina sem passar por nada). > > Estou utilizando no servidor de conexao o mingetty, jah configurado. > > No cliente uso o daemon do pppd + chat para executar a conexao. > > O que falta para trabalhar sem sinal (tom/pulso) eh da string de > > discagem para a maquina cliente (eu acho...), > > Se eu não me engano, seria a string ATX3 que faz com que seja ignorado > a existencia ou não de tom de linha. > > Marcelo Beckmann > Conectiva S.A. - www.conectiva.com.br > Suporte Corporativo - Curitiba - PR Ola lista, probelma resolvido. Descobri as strings dos modems (para utilizar com o chap/pppd, agora sem o mingetty) para conectar as duas maquinas com um linha sem alimentacao utilizando-se de modems comuns (sem LPMaster ou semelhantes). Aqui estao as strings: no servidor (maquina que aguarda a conexao): ATZ OK \ ATM1 OK \ ATX3 OK \ ATS7=255 OK \ ATD CONNECT no cliente (connecta, sem sinal de linha): ATZ OK \ AT\&FH OK \ ATM0 OK \ ATL0 OK \ ATS7=20 OK \ ATA CONNECT A velocidade nominal obtida na conexao foi 115200bps, mas muito longe do real. (Talvez pela distancia entre as maquinas). Nos testes em que fiz, ao media de tranferencia foi de 38400bps. Soh para constar, as maquinas estao a cerca de 70 metros uma da outra, uma possuia uma conexao permanente com a internet, e a outra estava morta, pois nao tinha placa de rede. Sem gastar nenhum $$$ a mais, agora tenho duas maquinas com conexao permanente na internet. Se alguem precisar a solucao completa e os scripts, mail-me em private. []'s Eder F. Miotto eder@diablo.rgsi.com.br ********************************************************************************** rz = ZMODEM :) uso isto para mandar arquivos por telnet ao inves de usar o ftp ;) Assunto: (linux-br) Aplicativo "rz" Aí galera, eu estava fuçando no /usr/bin, e vi um comando lá...o rz qual é a função deste aplicativo?...( man rz, já tentei, mais meu english é trash!!!!!!!!) ********************************************************************************** +> Cá pra nós. Alguém tem o drive para o modem da PCTel HSP56K para o lernel +> 2.4.2? Só falta isso para eu apagar o 2.2... +> Eu tenho para kernel 2.2.16, mas que funcionava no 2.2.17, só que quando eu +> executo o comando insmod -x pctel_hsp.o, o bicho retorna uum mounte de linha +> de unsresolved symbols e não funciona... +> +> Inté +> +> Léo Voce recompilou o kernel 2.4.2?, na hora do make menuconfig, voce pode escolher compilar o modulo de kernel que suporta o pctel. T++ ********************************************************************************** ********************************************************************************** ************************************************************************ ************************************************************************ ************************************************************************ a probabilidade é de que o sendmail esteja acionando o diald. Abra dois xterm e, em cada um, digite: # tail -f /var/log/messages e (se existir) # tail -f /var/log/mail ou # tail -f /var/log/ppp Talvez o mais fácil (se não precisar dêle) seja um killall sendmail. (chute: disca de 15 em 15 minutos, que é o default do sendmail) > o servidor anda discando do nada. Alguem pode me ajudar? ************************************************************************ Para que o Kppp faça a conexão sem aguardar o tom de linha, que é muito útil quando se usa um modem ligado a um ramal telefônico, é necessário configurar o kppp como a seguir: abra o kppp (ambiente gráfico); vá em Configuração do Kppp; Guia modem -> Comandos do Modem; String de Discagem: ATX3&ATDT; [OK] ************************************************************************ ************************************************************************ ************************************************************************ ************************************************************************ ************************************************************************