1
  • У меня дома компьютер с ip 192.168. 221.ххх

  • У меня есть другой компьютер на работе, который я могу пропинговать, и у него есть 2 IP-адреса: 192.168. 1.xxx и 192.168.0.xxx. Эти последние 2 адреса имеют один и тот же шлюз, т.е. 192.168. 1.1.

  • Компьютер на работе подключен к хабу. К этому концентратору также подключено встроенное устройство с адресом 192.168. 0.xxx

Теперь с моего домашнего компьютера я не могу пропинговать это встроенное устройство. Как бы я подключился к нему, не меняя подсеть, к которой он подключается? Я могу пропинговать встроенное устройство с моего рабочего компьютера, и я могу пропинговать рабочий компьютер с моего домашнего компьютера. Поэтому я пытаюсь подключиться к встроенному устройству с домашнего компьютера через рабочий компьютер. Перенаправление порта? как мне установить это на Ubuntu?

4 ответа4

3

Самый простой способ - использовать пересылку SSH. Запустите команду как это:

ssh -L 8000:192.168.0.xxx:yyyy user@192.168.1.zzz

Как только вы авторизуетесь на своей рабочей машине, ssh будет локально прослушивать порт 8000. Если вы подключитесь к localhost:8000, соединение будет переадресовано на 192.168.0.xxx:yyyy.

[Редактировать: ответ на запросы ниже]

Вы находитесь на хосте А. Использование -R заставляет B прослушивать порт и пересылать на C. Это может быть хорошо, в зависимости от того, насколько широко открыт ваш доступ к B. Использование -L заставляет A прослушивать порт и туннелировать соединение через B к C. Итак, предположим, что B - 10.10.10.10, а C - 20.20.20.20, и вы хотите подключиться к C через ssh. Вы запускаете эту команду:

ssh -L 8000:20.20.20.20:22 user@10.10.10.10

Теперь A прослушивает порт 8000, но соединения с ним будут туннелированы до 20.20.20.20:22, поэтому в локальной оболочке выполните эту команду:

ssh user@127.0.0.1:8000

Это сделает подключение к C (через ваш открытый сеанс к B). Замените другие порты другими службами, например, для подключения к веб-серверу на C:

ssh -L 8000:20.20.20.20:80 user@10.10.10.10

затем укажите ваш браузер на http://127.0.0.1:8000

1

Возможно, у встроенного устройства нет шлюза / маршрута к вашему домашнему ПК, диапазон 192.168.221.xxx. Если у вас есть доступ к его конфигурации, вы можете подключиться без переадресации, просто добавив соответствующий шлюз в свою таблицу маршрутизации.

0

Вопрос немного неясный (может быть, первым делом с утра).

Я бы проверил ваши маски подсетей, если вы находитесь на 255.255.255.0, то машины .221, .1 и .0 находятся в совершенно разных сетях.

Что касается рабочей и встроенной машины, они находятся в одной сети, но если они не могут общаться, я думаю, это конфликт маршрутизации.

Если бы это был я, я бы отключил вторичный интерфейс на рабочей машине и удостоверился, что вы поместили все в одну сеть (255.255.255.0), а затем использовали ips в том же диапазоне (192.168.0.x).

Если все находится в подсети с 255.255.0.0, то они уже находятся в одной сети, поэтому я просто отключил бы второй интерфейс на рабочей машине, так как это может создать конфликт.

0

Настройте B как маршрутизатор.

Если B машина Linux, выполните эту команду:

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

Если B уже не является шлюзом по умолчанию для A, вам, вероятно, теперь нужно настроить A, чтобы узнать о сети C, указать ему использовать B в качестве шлюза для достижения C.

route add -network 192.168.1.0 netmask 255.255.255.0 gw ip-of-B

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