[FUG-BR] Dois links de internet, um inacessível de fora

Aline de Freitas aline em bsd.com.br
Quarta Agosto 20 18:58:47 BRT 2008


Citando Gule # <gule.cps em gmail.com>:

> 2008/8/20 Aline de Freitas <aline em bsd.com.br>
>
>> Boa tarde!
>>
>> Estou com dois links de internet:
>>
>> (bge1) Virtua = 12 megas, IP Dinâmico
>> (bge2) Ajato = 2 megas, IP fixo
>>
>> (bge0) Rede interna
>>
>> A prioridade para uso interno é a bge2, por conta da banda alta.
>> Apenas para alguns
>> acessos que exigem autenticação por IP criei rotas via bge1. Pela rede
>> interna tenho os
>> dois gateways das duas interfaces acessíveis, mas o gateway default é
>> o via bge2. O
>> problema é que externamente, apenas o IP da bge2 (dinâmico) é
>> acessível. O IP da bge1
>> (fixo) nem pinga. Quando eu seto a bge2 como default, então ela passa
>> a ser acessível
>> externamente. Alguém conhece alguma forma de fazer com que ambas as
>> interfaces sejam
>> acessíveis externamente?
>>
>> Aline
>> -------------------------
>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>
>
> Firewall ? PF ?
> Caso seja, basta liberar a porta que quer que seja acessivel na interface
> desejada.
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>

Não me parece ser uma questão de portas, uma vez que de fora o IP nem pinga.

Minhas regras no pf.conf:

# Interfaces
EXT_IF1 = "bge1"
EXT_IF2 = "bge2"
INT_IF = "bge0"
VPN_IF = "tun0"

# Redes
LAN_NETWORK = "192.168.0.0/24"
VPN_NETWORK = "10.8.0.0/24"

# Portas publicas (abertas para Internet)
# 4222 = SSH
# 4280 = Apache (HTTP)
# 42443 = Apache (HTTPS)
# 8180 = Tomcat (HTTP)
# 8443 = Tomcat (HTTPS)
# 41194 = OpenVPN
PUB_PORTS = "{ 4222, 4280, 42443, 8180, 8443, 41194 }"

# Logar eventos em interface externa
set loginterface $EXT_IF1
set loginterface $EXT_IF2

# Politica padrao de envio de rst em block
set block-policy return

# Ignorando loopback
set skip on lo

# Normalizacao
scrub in all

# NAT de VPN
nat on $EXT_IF1 from $VPN_NETWORK to any -> ($EXT_IF1)

# NAT de LAN
nat on $EXT_IF1 from $LAN_NETWORK to any -> ($EXT_IF1)
nat on $EXT_IF2 from $LAN_NETWORK to any -> ($EXT_IF2)

# Bloqueando toda entrada por padrao
block in

# Saida livre
pass out keep state

# Comunicacao livre com VPN
pass quick on $VPN_IF keep state

# Comunicacao livre com LAN
pass quick on $INT_IF keep state

# Permitiondo acesso a portas publicas
                                        pass in on $EXT_IF1 proto tcp  
from any to
($EXT_IF1)
     port $PUB_PORTS flags S/SA keep state
pass in on $EXT_IF2 proto tcp from any to ($EXT_IF2)
     port $PUB_PORTS flags S/SA keep state

# Permitindo Ping
pass in inet proto icmp all icmp-type echoreq keep state

# Faz balanceamento de carga no trafego da rede interna
pass in on $INT_IF route-to { $EXT_IF1, $EXT_IF2 } round-robin proto tcp from
$LAN_NETWORK to any flags S/SA modulate state
pass in on $INT_IF route-to { $EXT_IF1, $EXT_IF2 } round-robin proto {  
udp, icmp } from
$LAN_NETWORK to any keep state

# Regras gerais "pass out" para as interfaces externas
pass out on $EXT_IF1 proto tcp from any to any flags S/SA modulate state
pass out on $EXT_IF1 proto { udp, icmp } from any to any keep state
pass out on $EXT_IF2 proto tcp from any to any flags S/SA modulate state
pass out on $EXT_IF2 proto { udp, icmp } from any to any keep state

# Roteia pacotes de qualquer IP na $EXT_IF1 para $EXT_Gw1 e o mesmo para
# $EXT_IF2 e $EXT_GW2
pass out on $EXT_IF1 route-to ( $EXT_IF2 ) from $EXT_IF2 to any
pass out on $EXT_IF2 route-to ( $EXT_IF1 ) from $EXT_IF1 to any


Mais detalhes sobre a lista de discussão freebsd