Piter Punk's HomePage - Artigos
 
English version
Conectando duas máquinas sem placa de rede

Piter Punk

Você tem dois computadores e não possui placas de rede. Ao mesmo tempo, quer compartilhar alguns arquivos entre eles ou mesmo a conexão com a internet... o que fazer?

1 Introdução

O problema é bastante comum. Não é todo mundo que está a fim de gastar dinheiro comprando uma placa de rede. Ou mesmo quem está a fim, não pode abrir o computador para não perder a garantia.

A melhor solução para esse caso, é utilizar a porta paralela. A taxa de transferência é razoável (cerca de 150kbps no modo normal e atingindo entre 2 e 6Mbps usando EPP/ECP, enquanto um modem atinge 56kbps), o cabo é barato e utiliza um hardware padrão em todos os PCs.

2 Preparando terreno

Em primeiro lugar, verifique se você possui o módulo PLIP. Ele fica dentro do diretório /lib/modules/2.x.x. A organização interna do diretório muda um pouco de kernel para kernel, aconselho usar o ``find'' para ajudar na localização.

Se o módulo já estiver ali, ótimo! Caso contrário, você deverá recompilar seu kernel com suporte ao PLIP. Não é complicado, você deve apenas habilitar (além do suporte a módulos):

2.1 kernel 2.2.x

  • General Setup -> Parallel port support
  • General Setup -> PC-style support
  • Network device support -> PLIP (parallel port) support

2.2 kernel 2.4.x

  • Parallel port support -> Parallel port support
  • Parallel port support -> PC-style hardware
  • Parallel port support -> <*> IEEE 1284 transfer modes
  • Network device support -> PLIP (parallel port) support

Existem várias outras opções dentro do menu ``Parallel port support'', habilite-as conforme o seu hardware e suas necessidades.

3 Uma olhadinha no hardware

Essa é importante. Além do cabo, você vai precisar que as portas das duas máquinas estejam no mesmo modo. Se, por exemplo, você tiver um Pentium III e um 386SX, são grandes as chances de que precise mudar as configurações da porta paralela do seu Pentium para o modo Normal.

Cada modo possui suas limitações de velocidade. O Normal atinge no máximo 150kbps para saída e 50kbps para entrada, como a comunicação será bi-direcional (a saída de um será a entrada do outro), você irá obter a taxa máxima de 50kbps. Nos modos ECP/EPP, em sistemas ISA, você pode atingir cerca de 2Mbps e, em sistemas PCI, mais de 5Mbps.

Cuidado com o cabo! Quanto maior, menor a sua taxa de transferência e maior a ocorrência de erros. Nada impede que você faça um cabo enorme, mas se ele vai funcionar são outros quinhentos. Utilize no máximo uns 3 metros de cabo e garanta sua felicidade.

4 Configurando sua rede

Essa parte é bem fácil. Você irá primeiro carregar os módulos e depois configurar a rede com os comandos de sempre (se você já configurou a rede uma vez, sabe do que estou falando, se não configurou, é uma boa hora para aprender).

4.1 Carregando os módulos

No kernel 2.0.x, você deve carregar o módulo plip, lembrando de colocar o IO e IRQ corretos para o seu hardware. Geralmente os valores são: 0x378 e 7. Lembre-se antes de carregar o módulo plip, de remover o módulo lp. O comando para carregar o módulo é este:

# modprobe plip io=0x378 irq=7

No kernel 2.2.x e 2.4.x, antes do plip, você deve carregar o módulo parport_pc. Em 90% das vezes, ele consegue detectar perfeitamente o IRQ e o IO da sua paralela, e você não precisa fazer mais nada. Se ele não detectar corretamente, você deve colocar o io e a irq. Ficando mais ou menos assim:

# modprobe parport_pc io=0x378 irq=7
# modprobe plip

O mais comum, é que seja necessário incluir apenas no IRQ. Se mesmo assim não funcionar, coloque o IO.

4.2 A rede propriamente dita

Depois de carregar os módulos nos dois computadores (é, você precisa que os dois computadores estejam preparados). Chegou a hora de configurar a rede para valer.

Você vai precisar de um IP para cada computador. Iremos usar 192.168.1.0 para um deles e 192.168.1.1 para o outro. Estando em um dos computadores, digite:

# ifconfig plip0 192.168.1.0 pointopoint 192.168.1.1 up

e, no outro computador, faça assim:

# ifconfig plip0 192.168.1.1 pointopoint 192.168.1.0 up

Pode ser que, ao invés de plip0, o nome da sua placa de rede fique sendo plip1, ou plip2. Depende do endereço de IO dela. Normalmente, plip1 só aparece em máquinas com mais de uma porta paralela.

Importante agora, é definir a rota de uma máquina para outra. Faça isso com o comando:

# route add 192.168.1.1 plip0

No outro computador, troque 192.168.1.1 por 192.168.1.0. Utilizando o comando ping, teste a sua rede. Caso não tenha funcionado. Vá refazendo os passos, verificando configurações, etc...

5 Utilidades

Se você estiver conseguindo taxas de transferência razoáveis, pode montar um Xterminal, ou deixar uma das máquinas como servidor NFS de /home e /cdrom para outra máquina mais modesta. Com taxas de transferência menores, você pode considerar o plip como uma boa maneira de dividir sua conexão discada com dois computadores.

Em qualquer dos casos, seria bastante interessante incluir os comandos que utilizamos na configuração (e teste) na inicialização da sua máquina. Se você não quer ter trabalho de colocar tudo nos locais corretos, inclua os comandos no seu rc.local.

Se você prefere um pouco mais de técnica e organização, estude a inicialização do seu sistema e vá colocando nos locais mais indicados (ou gere um novo script). Abaixo seguem dois pequenos exemplos (ambos testados):

5.1 XTerminal

Em um dos computadores, configure o XDM para aceitar as conexões que vêm do IP do outro lado do cabo paralelo. Se os dois micros suportarem ECP/EPP, você terá uma ótima performance. No outro computador, digite apenas:

# X -query ip.maquina.com.xdm

Se tudo funcionar corretamente, coloque esta linha no rc.local, ou no rc.4 (caso do Slackware).

5.2 Compartilhando Internet

No computador que possui o acesso discado (ou *DSL, ou sei lá o quê). Habilite o roteamento e as regras de ipchains/iptables. Existem dessas regras em vários documentos na internet, você não terá problemas para encontrá-las. Basicamente, você precisa fazer apenas (no ipchains):

# ipchains -A forward -j MASQ

No outro computador, você deve colocar a rota padrão apontando para o primeiro. Assim:

# route add default gw plip0

Funcionando, coloque os comandos em seu rc.local (ou, para alguém mais organizado, coloque uns em rc.firewall e outros no rc.inet1).


Links Principal Artigos Piter Punk Dicas Programas
 
Powered by Slackware Linux - Written in VIm (the best one!) Last Update: 30 Oct 2004