компьютеру A(192.168.1.134) необходимо установить соединение UDP с компьютером C(192.168.0.30).

Как вы можете видеть, оба находятся в другой подсети. Теперь у меня есть компьютер B, который имеет 2 IP-адреса, по одному для каждой подсети (192.168.1.135 и 192.168.0.37). A может пинговать B, а B может C, но A не может пинговать C. Как я могу использовать компьютер B, чтобы установить соединение между A и B. Помните, что компьютер А должен соединиться с программой, которую я создал, поэтому я не могу выполнять какие-либо действия в командной строке. Будет ли работать переадресация портов? Как бы я это сделал?

Я думаю о выполнении SSH -L 10002:192.168.0.30:10002 192.168.1.135, но тогда, даже если это сработает, мне все равно придется создать еще одну переадресацию, чтобы общение проходило в обе стороны?

1 ответ1

2

я думаю, что вам просто нужно включить пересылку пакетов на компьютере B. Например, в Ubuntu, который выполняется с помощью:

echo 1 > /proc/sys/net/ipv4/ip_forward

Теперь компьютер может принимать пакеты, полученные на одном интерфейсе, и отправлять их на другой интерфейс.

Изменить: В Ubuntu, который не работает с sudo, мне пришлось использовать "sudo su", а затем запустить выше, как root.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .