[FUG-BR] IPNAT vs Traceroute

Márcio Elias marcioelias em gmail.com
Quinta Julho 7 10:01:26 BRT 2016


Alguém da lista, teria o contato ou o local onde eu possa publicar essa
dúvida para ser vista pelo pessoal de desenvolvimento da ferramenta?

Ainda não estou confortável para colocá-lo em produção desta forma.

On Mon, Jul 4, 2016 at 10:56 AM Márcio Elias <marcioelias em gmail.com> wrote:

> 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