Intereting Posts
Программное обеспечение для навигации по сетевой диаграмме Почему мой ноутбук сильно нагревается при использовании DVD-диска Knoppix? tcpdump: потерянные пакеты Какое распределение вы предлагаете для ежедневного использования? Температура центрального процессора в гостевой гостевой системе KVM Иногда водитель загружается, иногда блока операторов Механизм в сценариях оболочки? Как подсчитать количество активных окон, открытых отдельно от оконного менеджера? Невозможно установить пакеты из raspbian repo Из терминала … не удается удалить пакет Python (не удалось найти), также не может установить (уже выполнено) Как установить переменную среды glib: g_slice Как назначить слова с пробелами как целое имя переменной в сценарии оболочки? Сценарий оболочки не работает через работу cron Записывайте все передачи scp с помощью systemd-journald Более 255 туннелей Linux GRE

Каков самый простой способ перенаправления трафика с использованием прокси или iptables?

Мне нужно перенаправить весь входящий трафик на порт 7777 на определенный порт destination_ip:.

У меня есть около 40 литекинских (scrypt) горных вышек, которые мне приходится вручную переконфигурировать каждый раз, когда я хотел бы переключать монеты или пулы. Вместо этого я хотел бы иметь возможность просто изменить адрес назначения в моем поле прокси для управления фермой.

В настоящее время я использую прокси Dante, у которого есть модуль перенаправления, который выглядит идеально. Однако у меня нет 400 долларов, чтобы потратить на этот модуль. Кроме того, Данте, похоже, занимает огромное количество памяти для каждого соединения.

Кроме того, вместо использования прокси я попытался использовать iptables в качестве решения, но получил ошибку:

root@xx:~# iptables -t nat -A PREROUTING -p tcp -d xxxx --dport 7777 -j DNAT --to xxxx:7777 root@xx:~# iptables -t nat -A POSTROUTING -d xxxx -j MASQUERADE iptables: No chain/target/match by that name. 

Я не мог заставить это работать, и я уверен, что это будет даже решение того, что мне нужно.

Любые идеи о том, как наилучшим образом достичь желаемого результата, будут отличными!

Попробуй это,

 iptables -t nat -A PREROUTING -p tcp -d xxxx --dport 7777 -j DNAT --to-destination yyyy:port 

Вам необходимо указать пункт назначения и порт, указанный в качестве аргументов to-destination .

EDIT : Если вы сделали некоторые «грязные» изменения (вы пробовали вещи, которые не работали), перезапустите iptables, чтобы их очистить. Если вы сохранили свои изменения, даже если они не сработали, вы должны очистить эти правила (используйте опцию -D ), прежде чем пытаться добавить больше.


Во-первых, убедитесь, что вы принимаете входящие пакеты:

 iptables -A INPUT -p tcp --dport 7777 -j ACCEPT 

Затем перенаправляйте трафик (подумайте -I , чтобы вставить правило в начале, иногда лучше, чем добавление правила в цепочку):

 iptables -A PREROUTING -t nat -p tcp --dport 7777 -j DNAT --to-destination <destination_ip>:<destitation_port> 

Вы можете проверить правило, которое вы только что добавили (вы должны увидеть что-то вроде DNAT [...] tcp dpt:7777 to:<destination_ip>:<destitation_port> и, вероятно, вы не должны видеть другие правила в PREROUTING связанные с этим конкретным портом ):

 iptables -L -n -t nat 

Если все работает хорошо, всегда помните о сохранении изменений (иначе вы потеряете правила после перезагрузки / перезагрузки):

 service iptables save