[FUG-BR] IPNAT vs Traceroute

Márcio Elias marcioelias em gmail.com
Segunda Julho 4 10:56:59 BRT 2016


Bom dia.

Sobre o traceroute em ICMP ou UDP, eu estava fazendo o teste pelo Windows,
que não tem essa opção (visão do cliente).

Fiz o teste com a opção auto, deixei inclusive somente uma regra tcp/udp
auto, e uma para o resto, um /32 para outro /32 (2 linhas de configuração)
e não funcionou.

Sobre o FTP ainda não ví, mais acredito que precisarei sim incluir essas
regras para que o mesmo funcione.

Não coloquei em produção ainda por conta desse problema no traceroute,
constato via tcpdump que os pacotes ICMP Type 11 chegam na interface WAN do
servidor, mais não passam para a interface LAN, já os tipos 0 e 8 transitam
normalmente entre as interfaces.

On Thu, Jun 30, 2016 at 4:05 PM Vinícius Zavam <egypcio em googlemail.com>
wrote:

> 2016-06-25 10:12 GMT-03:00, Márcio Elias <marcioelias em gmail.com>:
> > Sim tem essa regra considerando todo o restando dos protocolos.
> >
> > O problema mesmo é que o bendito ICMT Type 11 não retorna a interface que
> > deveria....
> >
> > Achei isso na documentação do Ipfilter/Ipnat do NetBSD.
> >
> > *ICMPIDMAP*
> >        ICMP  messages  can be divided into two groups: "errors" and
> > "queries".
> >        ICMP errors are generated as a response of another IP packet. IP
> > Filter
> >        will  take  care  that ICMP errors that are the response of a
> NAT-ed
> > IP
> >        packet are handled properly.
> >
> >
> > Mais isso não é o que está acontecendo, a menos que eu precise de
> > alguma regra de filtragem no Ipfilter...
> >
> >
> > On Fri, Jun 24, 2016 at 6:17 PM Eduardo Schoedler <listas em esds.com.br>
> > wrote:
> >
> >> Em 24 de junho de 2016 15:53, Otavio Augusto <otavioti em gmail.com>
> >> escreveu:
> >> > Em 24 de junho de 2016 15:33, Márcio Elias <marcioelias em gmail.com>
> >> escreveu:
> >> >> Pessoal, alguém está utilizando o IPNAT no FreeBSD para fazer NAT?
> >> >>
> >> >> Configurei um servidor com vários IP's públicos para atender a muitos
> >> >> clientes (uma espécie de CGNat para o ISP que trabalho).
> >> >>
> >> >> Setei um range de portas TCP/UDP para cada IP privado, para poder
> >> >> identificar usuários caso necessário e tudo funcionou muito bem,
> >> >> alias,
> >> >> quase tudo.
> >> >>
> >> >> Estou tendo um problema com o traceroute, os pacotes ICMP Type 11 não
> >> >> retornam a interface com o IP privado atras do NAT, chegam na
> >> >> interface
> >> >> pública mais não são traduzidos corretamente.
> >> >>
> >> >> O resultado é, em um traceroute para o endereço 8.8.8.8 partindo de
> um
> >> PC
> >> >> atras desse servidor de NAT eu vejo os hops até o servidor de nat,
> >> >> tenho
> >> >> timeout nos demais e finalmente recebo o retorno do último hop, já
> que
> >> esse
> >> >> não é um TTL Exceeded.
> >> >>
> >> >> Pode ser até maquiagem, uma vez que não reparei nenhum outro problema
> >> sério
> >> >> nesses tipos de conexões, mais gostaria muito de solucionar isso.
> >> >>
> >> >> Alguém usando algo parecido ou com algum knowhow sobre esse ambiente
> >> para
> >> >> dar um auxilio?
> >> >> -------------------------
> >> >> Histórico: http://www.fug.com.br/historico/html/freebsd/
> >> >> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >> >
> >> > Quando vc setá um range de portas para cada ip invalido vc taz nat de
> >> > tcp e udp agora vc precisa de uma regra para icmp.
> >> > Coloque uma regra única de icmp para cada ip publico fazendo nat para
> >> > os ips que devem sair por este ip.
> >>
> >> Márcio,
> >>
> >> Além de TCP / UDP / ICMP, não esqueça o restante dos protocolos... ex:
> >> GRE, ESP, AH, L2TP, etc...
> >> Faça uma regra final considerando o NAT do restante todo.
> >>
> >> Att,
> >>
> >>
> >> --
> >> Eduardo Schoedler
>
> chegastes a tentar usar o traceroute(8) com -I ?
>
>      -I      Use ICMP ECHO instead of UDP datagrams.  (A synonym for "-P
>              icmp").
>
> por padrao, o traceroute(8) tambem usa UDP; portas altas.
> provavelmente nas saidas desses teus testes, ele poderia estar
> "saltando" com diferentes enderecos do pool que tu declarastes via
> IPNAT. nao?
>
> fez testes com "portmap tcp/udp auto"? a proposito, tuas conexoes de
> saida pra ftp estao a funcionar via IPNAT sem "proxy port"?
>
> [ ] ' s
>
>
> --
> Vinícius Zavam
> keybase.io/egypcio/key.asc
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>


Mais detalhes sobre a lista de discussão freebsd