Compartilhar internet pelo Linux

Publicado por Racy Rassilan em 08/09/2009

[ Hits: 55.313 ]

 


Compartilhar internet pelo Linux



Olá, pessoal!

Resolvi criar essa dica pois vejo muitas pessoas com dúvida em relação a compartilhar internet com modem roteado e modem sem estar roteado.

Bem, vou passar para vocês duas dicas que acredito que uma delas será 100% perfeita para você.

Primeira dica:

Se o seu modem for roteado e já realiza a conexão com a internet sozinho, use esse código dentro do arquivo /etc/rc.local: /etc.

# Compartilha a conexão

modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -eth1 -j MASQUERADE # note que eth1 é qual placa de rede está conectada diretamente ao modem, se for a eth0 troque por eth0, se for eth1 deixe eth1, lembrando que isso é para quando seu modem é roteado (conecta sozinho).

# Abre para a rede local:
iptables -A INPUT -p tcp --syn -s 192.168.10.0/255.255.255.0 -j ACCEPT

# Fecha o resto da rede:
iptables -A INPUT -p tcp --syn -j DROP

exit 0

Feito isso basta salvar o arquivo. Então você terá sua placa eth1 recebendo a internet do modem e liberando para a rede através da eth0.

Segunda dica:

Caso seu modem não seja roteado, siga um artigo de minha autoria que explica como fazer a configuração de um discador PPPoE e compartilhar a internet passo a passo.
ATENÇÃO: Nesse artigo a única diferença é que eu não uso eth1 para receber a internet do modem e liberar por eth0, e sim o inverso, eth0 para eth1 e na hora de adicionar os comandos que fazem o compartilhamento eu não coloco nem eth0 nem eth1 e sim ppp0.

Arquivo /etc/rc.local:

# Compartilha a Conexão

modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -ppp0 -j MASQUERADE # note que agora eu coloquei ppp0, pois minha conexão é feita via ppp0.

# Abre para a rede local:
iptables -A INPUT -p tcp --syn -s 192.168.10.0/255.255.255.0 -j ACCEPT

# Fecha o resto da rede:
iptables -A INPUT -p tcp --syn -j DROP

exit 0

Leia o artigo que tenho certeza que você conseguirá e ficará muito feliz! ;-)

Outras dicas deste autor

Amarrando placas de rede ao endereço MAC

Configurando servidor DHCP3

Servidor Apache2 + MySQL + PHP5 + PHPMyAdmin (Ubuntu)

Configuração de internet e rede no Ubuntu 9.04 Desktop

Instalando e configurando servidor SSH (Ubuntu)

Leitura recomendada

CMT - CAIXA.GOV

Corrigindo sistema de fontes de texto da Wikipédia no Debian

Instalando o Firefox 2.0 no Conectiva 10

Acessando Banco do Brasil no Debian 6 Squeeze

Cliente Google Authenticator para Linux (extensão Chrome)

  

Comentários
[1] Comentário enviado por as.gonzalez em 01/11/2009 - 18:49h

Estou com problema para compartilhar a internet com Ubuntu:

Instalei o Ubuntu Desktop instalei o Squid e no micro tem duas placas de rede.

Uma, tenho a configuração de IP da Embratel: 201.xxx.xxx.xxx máscara 255.xxx.xxx.xxx
gateway 201.xxx.xxx.xxx
Na outra, tenho a configuração da placa de rede local: 192.168.0.1 máscara 255.xxx.xxx.0
não coloquei gateway

Só que só funciona a placa de Internet. Navego sem problema na internet, mas na rede local não consigo nem pelo PING reconhecer a rede.

O que acontece nesse caso?

Meu sistema: UBUNTU DESKTOP 9.04

[2] Comentário enviado por helloworldbr em 08/11/2009 - 21:58h

Olá. Ttenho dois computadores com o Debian: um laptop e um desktop. O desktop está ligado à rede (Virtua) através de um roteador TP-LINK que serve a todos os computaodres da casa (eth0). O Laptop está conectado ao desktop pela placa eth1 e às vezes preciso acessar a Internet com ele. Ambos usam o Debian. Usando ifconfig eth1 192.168.0.1 netmask 255.255.255.0 no desktop e ifconfig eth0 192.168.0.2 netmask 255.255.255.0 no laptop consigo acessar o Apache no navegador usando o endereço 192.168.0.1 porém não consigo acessar a Internet. Já tentei a sua receita na linha de comando e não deu certo. Tenho dúvidas se não é o meu roteador que está atraplhando. Qualquer ajuda é bem vinda.

[3] Comentário enviado por leandrobrunoo em 28/01/2010 - 16:15h

Bom dia a todos da vol ...a muito tempo tento compartilha a internet e não consigo.vamos ao cemariomicro com ubuntu server 9.04internet velox Pernambucoduas placas de rede, eth0 onboard  e eth1 offboardeth0 192.168.0.6 eth1 192.168.0.7eth0 plugada ao modem roteado.eth1 plugada ao swit.fiz tudo como vc me postou ai na vol, e nao funciona.

# Compartilha a conexão

modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -eth0 -j MASQUERADE

# Abre para a rede local:
iptables -A INPUT -p tcp --syn -s 192.168.0.0/255.255.255.0 -j ACCEPT

# Fecha o resto da rede:
iptables -A INPUT -p tcp --syn -j DROP

exit 0

[4] Comentário enviado por nox6000 em 28/01/2010 - 18:36h

Ola Leandrobruno,

Você provavelmente tera que fazer essas duas coisas para que funcione:

1º O modem não deve estar roteado vc deve reseta-lo e configurar no linux o dicador pppoeconf digitando no shell apt-get install pppoeconf

2º Verficar se a placa de rede que esta conectada ao modem não esta configurada com dhcp e nem a segunda...

Isso deve funcionar

[5] Comentário enviado por leonardor em 10/07/2010 - 10:42h

Amigão é seguinte
tenho um servidor ubuntu, duas placas de rede
eth0 internet,velox e roteado
eth1 rede

quero compartilhar o acesso pra os micros windows na minha rede, uso um rub, o dhcp ta ativo e os micros recebem o ip correto,tenho
acesso ao arquivos do servidor mais não consigo navegar nos micros da rede sendo que no servidor eu navego.

os procedimentos que estão aí em cima eu ja fiz e não funcionou.
O que devo fazer agora?

Agradeço......

[6] Comentário enviado por nox6000 em 11/07/2010 - 11:16h

Ola leonardo,

NOTE que nesta linha:

iptables -A INPUT -p tcp --syn -s 192.168.10.0/255.255.255.0 -j ACCEPT

ela abre o sinal de internet apenas para uma faixa de ips especificos, no exemplo se houver uma maquina que tenha o ip: 192.168.254.2
já não receberá acesso a internet uma vez que ela não está na faixa de ip para ela acessar a internet a configuração dela deve ficar assim:

qualquer ip dentro daquela faixa exemplo: 192.168.10.2
Gateway: (Ip da segunda placa de rede do servidor "a que libera o sinal para o hub")
DNS Primário: 200.165.132.148
DNS Secundário: 200.165.132.155

Então é certo que ira fincionar se vc seguiu o tutorial direitinho

[7] Comentário enviado por leonardor em 12/07/2010 - 17:29h

Amigão não deu certo !
seguinte meu arquivo rc.local está assim:
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING eth0 -j MASQUERADE

iptables -A INPUT -p tcp --syn -s 192.168.1.0/255.255.255.0 -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP

exit 0

meu servidor dhcp está assim:
ddns-update-style none;

default-lease-time 600;

max-lease-time 7200;

authoritative;

subnet 192.168.1.0 netmask 255.255.255.0 {

range 192.168.1.101 192.168.1.201;

option routers 192.168.1.1;

option domain-name-servers 200.165.132.148,200.165.132.155;



option netbios-name-servers 192.168.1.254;

option broadcast-address 192.168.1.255;

}
meu arquivo de interfaces :
auto lo eth0 eth1
iface lo inet loopback


iface eth1 inet static
address 192.168.1.254
netmask 255.255.255.0
gateway 192.168.1.1
network 192.168.1.0
broadcast 192.168.1.255



iface eth0 inet dhcp


Obs:o ip que ele gera no pc(windows) da rede é faixa correta de ip correta tanto que eu consigo acessar uma pasta compartilhada pelo samba, não consigo é navegar.

Desde já Agradeço e aguardo Ajuda!

[8] Comentário enviado por cainf em 20/05/2013 - 15:50h

Amigo minha dúvida é a seguinte
para eu acessar o meu modem eu tenho que tirar da placa eth0 e plugar no switch vou no browser e coloco o ip do modem que no meu caso é 192.168.0.1

Gostaria de fazer uma forma de uma estacao interna acessar o modem por exemplo

eth0 192.168.0.10
eth1 192.168.0.250

Ao digitar o ip 192.168.0.1 ele redireciona da minha placa eth0 para o ip 192.168.0.1

Grato



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts