Problemas ao compartilhar a rede (Ubuntu 10.4)

Iniciado por G@be-san, 17 de Maio de 2010, 19:00

tópico anterior - próximo tópico

G@be-san

Olha, o meu problema pode parecer simples, já procurei tópicos semelhantes aqui e nenhum me deu uma resposta que ajudasse.

Estou configurando um pc com Ubuntu 10.4 para ser um proxy e compartilhar a conexão da internet com a rede que eu administro. A minha placa de rede onboard está recebendo a internet do modem, enquanto a outra placa, Realtek RTL-8169CS, off-board deveria compartilhar a conexão com a rede, mas não faz.

Algumas informações que podem ajudar:

Meu arquivo /etc/network/interfaces:
## Inicio do arquivo
auto lo
iface lo inet loopback

# Interface eth0 conectada ao modem
auto eth0
iface eth0 inet dhcp

# Interface eth2 conectada ao roteador/swicth
auto eth2
iface eth2 inet static
address 192.168.0.1
netmask 255.255.255.0
broadcast 192.168.0.255
network 192.168.0.0


O resultado do ifconfig eth2:
eth2      Link encap:Ethernet  Endereço de HW 00:14:78:51:ff:ff 
          inet end.: 192.168.0.1  Bcast:192.168.0.255  Masc:255.255.255.0
          endereço inet6: fe80::214:78ff:fe51:ffff/64 Escopo:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Métrica:1
          pacotes RX:32 erros:0 descartados:2248146810 excesso:0 quadro:0
          Pacotes TX:0 erros:0 descartados:139 excesso:0 portadora:0
          colisões:0 txqueuelen:1000
          RX bytes:4320 (4.3 KB) TX bytes:0 (0.0 B)
          IRQ:16 Endereço de E/S:0xec00

(Não coloquei o eth0 por motivos de segurança)

Exemplo de configuração feita nas máquinas-cliente:
IP: 192.168.0.5
Netmask: 255.255.255.0
Gateway: 192.168.0.1
DNS: (os passados pelo provedor)

A internet conecta normalmente no servidor, já fiz atualização, instalei programas pelo apt-get e o caramba a 4. Mas na hora de pingar uma máquina da rede, nada! No momento em que faço as configurações e os testes, só tenho 3 máquinas ligadas: duas configuradas como clientes e o próprio servidor. Os clientes se enxergam, mas não enxergam o servidor, muito menos se conectam à internet.

Estou preocupado com o número de pacotes RX que estão sendo descartados pela eth2, não tenho idéia o que pode estar causando isso, ou se eu estou esquecendo algum comando...

Agradeço a ajuda de vcs, Jedis do Open-source! 8)


Um dia acordei de minha prisão e pulei da Janela. Achei a Liberdade. Valeu Linux!!!

G@be-san

Só agora que vi que tem uma seção dedicada só à configuração de servidores... Se algum administrador quiser mover o tópico, pode mover, me desculpem ;D...
Um dia acordei de minha prisão e pulei da Janela. Achei a Liberdade. Valeu Linux!!!

zekkerj

1) Lembre-se de ativar o repasse de pacotes:

echo 1 > /proc/sys/net/ipv4/ip_forward

2) Lembre-se de ativar o NAT de saída (Masquerading):

iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE

3) Lembre-se de colocar esses comandos num arquivo que seja re-carregado na inicialização do servidor.

----------
---------
--------

Testando sua rede:

1) Faça o cliente pingar a si mesmo.

ping 192.168.0.5

2) Faça o cliente pingar a outro cliente na mesma rede.

ping 192.168.0.6

3) Faça o cliente pingar o gateway:

ping 192.168.0.1

4) Faça o cliente pingar o IP do servidor DNS.

êeeeeepa. Quem é o servidor DNS dos clientes???
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

G@be-san

#3
O servidor DNS dos clientes é o mesmo que eu configuro no servidor, o que me foi passado pelo provedor. Fiz errado?? ???

No servidor, eu configurei os endereços de DNS que o meu provedor forneceu e mais os do OpenDNS e do Google, conforme vc me orientou em outro tópico, mas qual eu devo configurar nas máquinas-cliente? Outra coisa, eu estou em Moçambique. O DNS do OpenDNS e do Google podem servir pra mim mesmo aqui?
Um dia acordei de minha prisão e pulei da Janela. Achei a Liberdade. Valeu Linux!!!

zekkerj

CitarO servidor DNS dos clientes é o mesmo que eu configuro no servidor, o que me foi passado pelo provedor. Fiz errado??
Não. ;)

CitarNo servidor, eu configurei os endereços de DNS que o meu provedor forneceu e mais os do OpenDNS e do Google, conforme vc me orientou em outro tópico, mas qual eu devo configurar nas máquinas-cliente?
A mesma coisa que funciona no servidor deve funcionar nos clientes também.

CitarOutra coisa, eu estou em Moçambique. O DNS do OpenDNS e do Google podem servir pra mim mesmo aqui?
Sim, eles não são brasileiros, e nós usamos na boa aqui.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

G@be-san

Ok, vamos ao resultado dos testes:

1- Cliente pingando a si próprio: OK
2- Cliente pingando outro cliente: OK
3- Cliente pingando servidor e vice-versa: sem resposta

Executei os comandos para o compartilhamento via NAT, mas a placa do eth2 não consegue se comunicar com a rede. Já troquei por outra de mesmo modelo, novinha em folha, mas dá o mesmo resultado no servidor. Estou aqui tentando de tudo, só não vou desistir de fazer meu servidor em linux!
Um dia acordei de minha prisão e pulei da Janela. Achei a Liberdade. Valeu Linux!!!

zekkerj

Essa placa de rede RTL8169 é gigabit, certo?

Tem como vc usar uma placa fastEthernet no lugar dela?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

G@be-san

Vou então comprar uma placa nova hj e testo mais tarde no servidor. As placas Realtek Gigabit não são compatíveis no linux? Encontrei tanta gente na internet reclamando de incompatibilidade com placas Realtek....
Um dia acordei de minha prisão e pulei da Janela. Achei a Liberdade. Valeu Linux!!!

zekkerj

São compatíveis... na verdade o problema é uma desconfiança que eu tenho de que alguns mini-switches não estão negociando corretamente parâmetros de duplex/speed com placas gigabit, resultando em falha de conexão.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

G@be-san

Humpf... Pedi para outra pessoa comprar uma placa e me comprou uma com chip realtek rtl8139d. Agora ela só aparece no lspci tento dar um #modprobe 8139too, ifconfig eth1 up e nada...

Vou ter q comprar outra placa, to achando q esse modelo é pirata...
Um dia acordei de minha prisão e pulei da Janela. Achei a Liberdade. Valeu Linux!!!

zekkerj

Teve uma época que estavam rolando umas RTL8139 falsificadas... elas se identificavam como Realtek, mas na verdade eram da Hsing Tech. Jurava que isso já tinha sido resolvido desde o kernel 2.6.21 (estamos no 2.6.31/2.6.32...)
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

G@be-san

É falsificada mesmo, o lspci -a detectou o fabricante e era um tal de Hangzou, alguma coisa assim. Estou a procura de uma marca boa aqui, assim que eu comprar, eu testo e digo se funcionou. Quando temos q fazer algo bem feito, é bom nós mesmos fazermos, rsrsrs. ;D
Um dia acordei de minha prisão e pulei da Janela. Achei a Liberdade. Valeu Linux!!!

zekkerj

Dá pra rolar com ela mesmo. Executa aí:

sudo modprobe -r 8139too
sudo modprobe sc92031


Depois verifica se ela foi reconhecida:

sudo ethtool -i eth0
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

pauloleoni

Meu caro,

faça como o colega disse, copia as linhas de comando que ele passou e cola no arquivo /etc/rc.local

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE

Com isso sua rede deve rodar. Pode usar o squid também.

G@be-san

Um dia acordei de minha prisão e pulei da Janela. Achei a Liberdade. Valeu Linux!!!