Redirecionando todo o tráfego de IP sobre USB para um endereço fixo

1

Digamos que eu tenha um dispositivo conectado por IP via USB ao meu computador (executando o Ubuntu), que se conecta ao 10.0.0.1. Configurei o Wi-Fi do Ubuntu via USB para que o IP do meu computador nessa conexão seja 10.0.0.1, mas eu gostaria de redirecionar todo o tráfego (em todas as portas) para outro servidor e usar meu computador apenas como proxy.

Eu brinquei com algumas soluções, mas minha falta de familiaridade com os conceitos de rede está me atrasando (eu gasto muito tempo procurando coisas, e a documentação é muitas vezes um pouco deficiente). Eu nem tenho certeza se quero configurar um proxy, um firewall (acho que não) ou usar as tabelas de roteamento. O que eu quero fazer soa bastante simples ("redirecionar qualquer coisa vinda de IP sobre USB para o servidor lá"). Então, há uma maneira padrão de fazer isso? iptables? Lula? ufw?

    
por Emile 12.08.2013 / 16:14

1 resposta

4

O que você está pedindo é conhecido como NAT , uma tradução de endereço de rede. Há uma série de ferramentas que podem fornecer a funcionalidade NAT, mas no nível do endereço IP é provavelmente mais fácil com o iptables:

 iptables -t nat -I PREROUTING -d 10.0.0.1 --j DNAT --to 10.x.x.x

na tabela especial nat de iptables -t nat , insira na primeira regra na cadeia PREROUTING ( -I PREROUTING ), fornecendo um destino nat -j DNAT onde o IP de destino de entrada é para 10.0.0.1 ( -d 10.0.0.1 ) para o host 10.xxx ( --to 10.x.x.x ).

Você também pode precisar ativar o IP Fowarding, para que seu host atue como um roteador de rede com:

sysctl -w net.ipv4.ip_forward=1

E deveria ser isso! (Tão simples quanto você pensou que poderia ser!)

Ah, e ambos precisam ser executados como o usuário root, ou via sudo (se você tiver acesso para executar esses comandos via sudo!)

    
por 13.08.2013 / 00:03