Redirecionar o tráfego de 127.0.0.1 para 127.0.0.1 na porta 53 para a porta 5300 com iptables

3

Estou executando um servidor de DNS local na porta 5300 para desenvolver um software. Eu preciso que minha máquina use esse dns, mas não consegui dizer ao /etc/resolv.conf para verificar em uma porta diferente. Eu procurei um pouco no google e não encontrei uma solução.

Eu configurei 127.0.0.1 como nameserver em /etc/resolv.conf. Este é todo o meu /etc/resolv.conf:

nameserver 127.0.0.1

Poderia, por favor, dizer-me como posso redirecionar o tráfego de saída na porta 53 para outra porta?

Eu tentei o seguinte, mas não funcionou:

iptables -t nat -A PREROUTING -p tcp --dport 53 -j DNAT --to 127.0.0.1:5300 iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to 127.0.0.1:5300

Aqui está a saída de iptables -t nat -L -v -n (com regras sugeridas):

Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 REDIRECT   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:53 redir ports 5300 
    0     0 REDIRECT   udp  --  *      *       0.0.0.0/0            0.0.0.0/0           udp dpt:53 redir ports 5300 

Chain POSTROUTING (policy ACCEPT 302 packets, 19213 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 302 packets, 19213 bytes)
 pkts bytes target     prot opt in     out     source               destination 
    
por Zagorax 22.06.2012 / 22:58

2 respostas

4

Depois de Andres apontar que eu preciso de algumas outras regras para o pacote local, pesquisei um pouco e encontrei a solução.

Pacote gerado localmente ignora a cadeia PREROUTING da tabela nat enquanto lê a cadeia OUTPUT. Com as próximas regras, resolvi meu problema:

iptables -t nat -A OUTPUT -p tcp --dport domain -j DNAT --to-destination 127.0.0.1:5300
iptables -t nat -A OUTPUT -p udp --dport domain -j DNAT --to-destination 127.0.0.1:5300

Com essas regras, nem preciso alterar meu /etc/resolv.conf.

    
por 23.06.2012 / 10:22
1

Tente o seguinte:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dportar 53 -j REDIRECIONAR - para porta 5300

    
por 22.06.2012 / 23:18

Tags