Redirecionando portas com IP dinâmico

Publicado por Thomaz em 28/07/2004

[ Hits: 14.951 ]

 


Redirecionando portas com IP dinâmico



Se você tem uma conexão no seu firewall que é com IP dinâmico e quer usar o IP dela para redirecionar as portas para a rede interna, pode usar o AWK para capturar o IP da placa de rede com o ifconfig e jogar no iptables.

Segue um script que fiz:

# ipdinamico.sh
# Redirecionando portas de conexões com IP dinâmico
#######################################
## Thomaz (thomazguazzelli@yahoo.it) ##
#######################################
##
# DEFINIR VARIÁVEIS
# Pegar IP da placa de rede ligada na internet usando o awk
# Substituir eth0 pela placa

IPNET=`ifconfig eth0 | grep addr: | awk '{ print $2 }' | cut -d: -f 2`
PNET=eth0 #Interface ligada na internet(mesma acima)
INTERVNC=192.168.0.1 #Maquina interna rodando o VNCServer
INTERBASE=192.168.0.2 #Maquina interna rodando o Servidor do Firebird

#
# Regras do Netfilter (iptables)
#
# Redirecionar conexões que chegam no ip da internet (IPNET) para
# a máquina interna VNC (INTERVNC)

iptables -t nat -A PREROUTING -p tcp -d $IPNET --dport 5900 -j DNAT --to $INTERVNC
iptables -t nat -A POSTROUTING -p tcp -d $INTERVNC --dport 5900 -j SNAT --to $IPNET

# Redirecionar conexões que chegam a IPNET
# para Servidor Interbase (Firebird) interno

iptables -t nat -A PREROUTING -i $PNET -p tcp -d $IPNET --dport 3050 -j DNAT --to $INTERBASE
Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Ubuntu Linux com placa wireless Atheros

Seu Gmail no Live Bookmark do Firefox

Usando apelidos no Opera

Skype nativo no Linux

Conheça o buscador SempreUpdate Linux

  

Comentários
[1] Comentário enviado por birapn em 03/08/2004 - 08:07h

Santa ignorância batmam, mas eu não entendi!!??!!????

[2] Comentário enviado por alphainfo em 04/01/2005 - 16:47h

Bem, o único tilt q achei foi q a variavel PNET naum existe, o script referencia por IPNET... o resto tah tudo ok....


[]'s

Daniel Freire

[3] Comentário enviado por removido em 22/01/2005 - 21:20h

IPNET é o IP de eth0
PNET é a eth0

Sugiro que diefinas primeiro a interface de rede (PNET) e depois pegue o seu ip, por quê? Porque assim o ip á atualizado com menos trabalho, uma forma mais "slack" de se trabalhar...


PNET=eth0 #Interface ligada na internet (pode ser ethX, pppX, e assim por diante...)
IPNET=`ifconfig $PNET | grep addr: | awk '{ print $2 }' | cut -d: -f 2`

[4] Comentário enviado por Ernani em 08/11/2005 - 09:08h

Ola.
Fiz o direcionamento para uma maquina, e preciso que seja redirecionado para outra maquina, o que devo fazer???
Ou cancelar o direcionamento.

Ernani Ribeiro

[5] Comentário enviado por lois.cc em 03/01/2006 - 12:05h

Gostei, aqui funcionou, mas tive que modificar um puco a linha para o Conectiva 10. ela ficou assim

IPNET=`ifconfig eth0 | grep inet | awk '{ print $3 }'`

ai funcionou beleza...

Valeu....



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts