Neste link tem um artigo bem objetivo de como solucionar o seu problema.
http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=4106&pagina=1
Observe que alem das regras do iptables, e preciso montar e resetar as
regras e tabela para uso do iproute2.
Baseado nele, configurei os 3 link utilizados aqui na empresa, onde faço o
rotemento que necessito sem problema.
OBS: no site ha outros artigos interessante sobre o assunto, inclusive com
balanciamento de carga.
Wagner
----- Original Message -----
From: "Fernando Yamada" <[EMAIL PROTECTED]>
To: <debian-user-portuguese@lists.debian.org>
Sent: Tuesday, June 03, 2008 9:30 PM
Subject: Re: Roteamento pela origem
tentou?
(1)
iptables -t mangle -A PREROUTING -p tcp -s <ip do windows> --sport
3389 -j MARK --set-mark 3389
ip rule add fwmark 3389 table velox
ip route add default via <gateway do velox> table velox
(2)
iptables -t nat -A PREROUTING -p tcp --dport 3389 -j DNAT --to <ip do
windows>
iptables -t nat -A POSTROUTING -p tcp -o <interface lan> -p tcp
--dport 3389 -d <ip do windows> -j MASQUERADE
--
Fernando Yamada
Via IP Soluções para Internet Ltda
Fone: +55 48 2106-6161
e-mail: [EMAIL PROTECTED]
MSN: [EMAIL PROTECTED]
Skype: suporte2viaip
Quoting gunix <[EMAIL PROTECTED]>:
ola amigos,
agradeço a ajuda, porem esta quase no fim.
A ajuda do nosso amigo anderson silva me deu esta funcionando bem.
Externamento consigo acessar meu firewall de ambas as interfaces.
A unica coisa que nao consigo é acessar meu server windows que esta
respondendo a porta 3389.
Tentei e abusei do MARK, mas mesmo assim nao vai.
E mais uma vez... se eu excluir a rota default funciona bem.
Consigo colocar uma regra na rota pela origem juntamento com laguma função
de porta?
ex: o que vier de 192.168.0.x porta 3389 ir para o link embratel?
Att
Gustavo
O unico problema que t otendo agora é o seguinte
2008/6/2 Anderson Silva <[EMAIL PROTECTED]>:
Olá Gustavo,
tenho algo parecido funcionando, mas não documentei nada assim, não tenho
certeza dos passos necessários para alcançar o funcionamento, assim posso
te
ajudar e quando você chegar na solução poste na lista...
- primeiramente instale o pacote iproute
- configure o iproute
Adicione duas linhas no seu arquivo /etc/iproute/rt_tables
101 velox
102 embratel
-faça um script, que tanto pode ser acionado pelo seu script de firewall,
quanto pode ser colocado dentro do script de firewall:
#########################################################################
#!/bin/bash
IPT="/sbin/iptables"
IP="/bin/ip"
WAN1_NAME="velox"
WAN1_IF="ethX"
WAN1_IP="100.100.100.2"
WAN1_GW="100.100.100.1"
WAN1_NET="100.100.100.0/24"
WAN1_MARK=101
WAN1_WEIGHT=8
WAN2_NAME="embratel"
WAN2_IF="ethY"
WAN2_IP="200.200.200.2"
WAN2_GW="200.200.200.1"
WAN2_NET="200.200.200.0/24"
WAN2_MARK=102
WAN2_WEIGHT=4
# Local Interface Information
LAN_IF="ethZ"
LAN_IP="192.168.0.254"
LAN_NET="192.168.0.0/24"
LAN_BCAST="192.168.0.255"
# Localhost Interface
LO_IF="lo"
LO_IP="127.0.0.1"
LO_NET="127.0.0.0/8"
# This target allows packets to be marked in the mangle table
/sbin/modprobe ipt_mark
/sbin/modprobe ipt_MARK
# This target affects the TCP MSS
/sbin/modprobe ipt_tcpmss
# This enables source validation by reversed path according to RFC1812.
# In other words, did the response packet originate from the same
interface
# through which the source packet was sent? It's recommended for
single-homed
# systems and routers on stub networks. Since those are the
configurations
# this firewall is designed to support, I turn it on by default.
# Turn it off if you use multiple NICs connected to the same network.
if [ "$SYSCTL" = "" ]
then
echo "0" > /proc/sys/net/ipv4/conf/all/rp_filter
else
$SYSCTL net.ipv4.conf.all.rp_filter="0"
fi
# This option can be used to accept or refuse source routed
# packets. It is usually on by default, but is generally
# considered a security risk. This option turns it off.
if [ "$SYSCTL" = "" ]
then
echo "1" > /proc/sys/net/ipv4/conf/all/accept_source_route
else
$SYSCTL net.ipv4.conf.all.accept_source_route="1"
fi
# However, we'll ensure the secure_redirects option is on instead.
# This option accepts only from gateways in the default gateways list.
if [ "$SYSCTL" = "" ]
then
echo "0" > /proc/sys/net/ipv4/conf/all/secure_redirects
else
$SYSCTL net.ipv4.conf.all.secure_redirects="0"
fi
$IPT -t mangle -N MARK_VELOX
$IPT -t mangle -A MARK_VELOX -j MARK --set-mark $WAN1_MARK
$IPT -t mangle -A MARK_VELOX -j ACCEPT
$IPT -t mangle -N MARK_EMBRATEL
$IPT -t mangle -A MARK_EMBRATEL -j MARK --set-mark $WAN2_MARK
$IPT -t mangle -A MARK_EMBRATEL -j ACCEPT
$IPT -t mangle -N TO_MARK
$IPT -t mangle -A TO_MARK -p tcp --sport 3389 -j MARK_EMBRATEL
$IPT -t mangle -A TO_MARK -j MARK_VELOX
# Apaga tabelas de roteamento
$IP route flush table velox
$IP route flush table embratel
# Regras do iproute para direcionar marcas para as tabelas de roteamento
$IP rule add fwmark $WAN1_MARK table velox
$IP rule add fwmark $WAN2_MARK table embratel
$IP rule add from $WAN1_IP table velox
$IP rule add from $WAN2_IP table embratel
# Copia rotas da tabela principal para as outras tabelas de roteamento
$IP route show | grep -v ^default | while read rota; do
$IP route add table velox $rota
$IP route add table embratel $rota
done
# Definindo rota default de cada tabela de roteamento
# Tabela WAN1
$IP route add default via $WAN1_GW dev $WAN1_IF table velox
# Tabela WAN2
$IP route add default via $WAN2_GW dev $WAN2_IF table embratel
# Tabela default
$IP route add default via $WAN1_GW dev $WAN1_IF
# LIMPANDO CACHE
echo "Limpando cache de rotas."
ip route flush cache
########################################################################
2008/6/2 gunix <[EMAIL PROTECTED]>:
Tenho o CENARIO
CLIENTE ACESSANDO (3389)
|
|
ROTEADOR VELOX
| |
| |
------------SERVIDOR----------
LINUX DEFAULT VELOX
|
|
SWITCH
|
|
SERVER RESPONDENDO 3389
SAIDA DA INTERNET PELO VELOX
O cliente faz a requisicao do 3389 no ip fixo.
Este mesmo chega até o roteador, e do roteador no servidor firewall.
Porem no firewall minha rota padrao onde saem todas as maquinas é o
velox.
Se eu deixar desta forma o servidor nao consegue responder.
TEnho umas regras DNAT nata que aponta a conexao para o server.
Porem se eu colocar a conexao default o Embratel e deixar o Velox de
lado,
ai funciona normalmente.
O que pode ser?
Att
Gustavo
2008/6/2 Junior Polegato - Linux <[EMAIL PROTECTED]>:
gunix escreveu:
Na verdade meu link entra no meu firewall, por isso nao ta fazendo...
Tenho que fazer estar rotas nao mao para funcionar.
Porem vi uns assuntos que é possivel eu direcionar somente porta. Ex:
Tudo da rede na porta 3389 passa pelo link. o que nao for passa pelo
velox.
2008/6/2 Junior Polegato - Linux <[EMAIL PROTECTED] <mailto:
[EMAIL PROTECTED]>>:
gunix escreveu:
alguem poderia me dizer como faço para criar um roteamento
pela origem?
Porem gostaria de fazer o seguinte.
Tenho 3 placas de rede:
eth0 - LAN
eth1 - Velox
eth2 - Embratel Dedicado
Tudo que sai da rede gostaria que sai-se pelo Velox.
E tudo que sai da porta 3389 Gostaria que sai-se pelo Embratel.
Na verdade as pessoas vão se conectar pela porta 3389 no meu
server pelo embratel. E deve retornar pelo mesmo link.
O Velox estando default da problema.
Algeum pode me ajudar?
Não estou muito certo, mas pelo visto vai ter um servidor
respondendo na porta 3389, é isso? Se sim, então basta
"anunciá-lo" pelo link da Embratel e a tabela de roteamento cuida
do resto. Já tentou fazer ou monitorar isso?
Se quer a entrada pelo link da Velox e saído pelo da
Embratel, acho complicado, creio que não tenha um jeito simples.
Olá,
Primeira pergunta não respondida: vai ter um servidor respondendo
na
porta 3389?
Se a resposta for sim, então você precisa acessá-lo através o link
da Embratel, aí todo o fluxo entre esse servidor e o cliente trafega
pelo
link da Embratel "naturalmente".
Se a resposta for não, você está querendo acessar um servidor,
isto
é, você é o cliente, é só colocar uma rota estática para este servidor.
Descreva melhor seu cenário.
[]'s
Junior Polegato
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact
[EMAIL PROTECTED]
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]