Usando o PacketFilter para proxy de pacotes transparentes no OS X

Existe um utilitário legal por aí chamadosshuttle. Dependeu deipfw encaminhar pacotes no passado. Parece queipfw está quebrado principalmente no Mavericks e o conselho é usar o PacketFilter para isso agora.

Passei a maior parte do dia olhando para PacketFilter e pareceipfw possui um recurso que o PacketFilter não suporta (espero que eu esteja errado sobre isso).

A seguinte regra:

ipfw -q add 12300 fwd 127.0.0.1,12300 tcp from any to any not ipttl 42 keep-state setup

encaminhará todo o tráfego para a porta 12300.0.0.1 (localhost) 12300. No entanto, não altera o IP ou a porta de destino no pacote TCP. Isso é importante para interromper o uso, pois ele usa as informações sobre o destino original para encaminhar o pacote para outra rede.

A regra mais próxima que posso encontrar no mundo do PacketFilter é:

rdr pass proto tcp from any to any -> 127.0.0.1 port 12300

Essa regra envia o tráfego para a porta 12300.0.0.1 (localhost) 12300, mas também reescreve o endereço de destino como 127.0.0.1.

Alguma idéia de como obter o comportamento que o sshuttle precisa no OS X?

questionAnswers(0)

yourAnswerToTheQuestion