Доступ к устройству 192.168.1.x с устройства 192.168.0.x

728
Josh

У меня есть одно устройство с IP-адресом 192.168.1.110, а остальная сеть - 192.168.0.x. Маршрутизатор 192.168.0.1. 192.168.1.110 подключен к этому маршрутизатору. Другие устройства подключаются через WiFi к 192.168.0.5 (точка доступа Raspberry Pi), которая подключена к тому же маршрутизатору на 192.168.0.1.

Я пытаюсь получить доступ к 192.168.1.110 с устройства на 192.168.0.x. Я попытался добавить маршрут, который я вижу в таблице маршрутизации, но без кубиков.
Использование sudo route -n -v add 192.168.1.110 192.168.0.1пингов и тайм-аута SSH.
Использование sudo route -n -v add 192.168.1.110 192.168.0.5тайм-аута SSH и пинги показывают ниже

PING 192.168.1.110 (192.168.1.110): 56 data bytes Request timeout for icmp_seq 0 92 bytes from pi.hole (192.168.0.5): Redirect Host(New addr: 192.168.0.1) Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 0054 1369 0 0000 3f 01 e4b7 192.168.0.202 192.168.1.110  

Я также попытался изменить маску маршрутизатора на .254.0, вытащив точку доступа raspberry pi из цикла, но я все еще не могу получить доступ к устройству .1.110.

Если я изменю IP-адрес маршрутизатора на .1.x и одно из устройств .0.x, то получу доступ к устройству .1.110, но ни к одному из устройств .0.x. Я уверен, что это должно быть просто, но я не могу решить - что мне не хватает?

0
Это тривиально для этого устройства 1.110 иметь 1 в нем? Если нет, установите одно устройство в том же диапазоне и измените его IP-адрес на 0,110, и все будет работать. В противном случае вам потребуется изменить маску подсети на 255.255.254.0 как на сервере DCHP, так и на устройстве 1.110. LPChip 6 лет назад 1
Нет, я не могу изменить это обратно - я играл, пытаясь найти конкретный вариант использования для друга. Их Pi настроен как .0.110, но их маршрутизатор - .1.254 .254.0. Каким-то образом (не совсем уверенным, как, учитывая то, что я узнал, играя вокруг этим утром), они смогли получить доступ к Pi через SSH. Так как они могут получить доступ к Pi, я могу заставить их обновить его до .1.110, чтобы соответствовать их сети. Я все еще хотел бы выяснить, как получить доступ к обоим устройствам .1.x и .0.x, хотя без необходимости изначально обращаться к Pi, чтобы что-то изменить. Josh 6 лет назад 0
В настоящее время у вас есть две логические сети, поэтому вы не можете получить доступ к одному устройству. Вам потребуется изменить IP-адрес устройства *. *. 1. * на *. *. 0. *, чтобы получить доступ к нему с любого другого устройства в сети *. *. 0. *. Для получения дополнительной информации о том, почему, вам нужно изучить маски подсетей и маршрутизацию. halligan26 6 лет назад 0
Да, я понимаю, что здесь есть две сети. Я пытаюсь понять, как прокладывать маршрут между ними (опять же, не уверен, как мой друг смог это сделать, ничего не изменив в своей сети). Я пробовал разные вещи без всякой радости, поэтому и прошу помощи. Josh 6 лет назад 1
Да это именно то, что я имею в виду Josh 6 лет назад 0
* Маршрутизатор 192.168.0.1. * Маршрутизатор должен иметь как минимум 2 адреса ... поэтому вам нужно иметь один адрес из 192.168.0.0/24 и один адрес из 192.168.1.0/24. А 192.168.1.110 должен иметь маршрут до 192.168.0.0/24 (и 192.168.0.x - до 192.168.1.0/24). Akina 6 лет назад 0

1 ответ на вопрос

0
grawity

Пакеты должны идти в обоих направлениях, поэтому с обеих сторон необходимо выполнить множество изменений конфигурации.

Например, если вы измените маску сети на / 23 (255.255.254.0), этого недостаточно на устройстве A - да, оно сможет напрямую связаться с устройством B, но куда устройство B отправит ответ? Если B все еще думает, что он находится на / 24, он будет пытаться отправить ответ через шлюз.

Точно так же: даже если вы добавите правильный маршрут к устройству B, это не скажет устройству B, куда отправить ответ для устройства A. Оно все равно будет использовать то, что оно уже знает.

Предполагая, что вы вообще не можете перенастроить устройство B, но, по крайней мере, можете прочитать его конфигурацию, есть полтора способа сделать это.

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

    Например, если устройство хочет использовать 192.168.1.254 в качестве своего шлюза:

    ifconfig en0 192.168.1.254 netmask 255.255.255.0 alias # for FreeBSD  ip addr add 192.168.1.254/24 dev eth0 # for Linux 

    Другой общий адрес - 192.168.1.1. Один из способов узнать правильный адрес - посмотреть, какие ARP-запросы запрашивает устройство.

  • Если устройство не имеет шлюза, сконфигурированный на всех, но вы знаете, по крайней мере, его размер подсети, вы можете 1) сделать выше, с некоторым произвольным адресом в той же подсети, и 2) настроить маршрутизатор таким образом, что он будет маскироваться (SNAT) все коммуникации.

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

    Я не знаю, как это сделать, но это будет включать pfили iptablesправила NAT.

Спасибо за ответ. Это то, что я думал / работал над маршрутом назад. Странно, однако, что мой друг все еще был в состоянии получить к нему доступ (Pi был настроен как статический ip .0.110 и маршрутизатор .0.1, в то время как его маршрутизатор является .1.254) - возможно, у него уже был псевдоним / виртуальный ip на его маршрутизаторе. Josh 6 лет назад 0
Возможно. Компьютер может иметь такие же «псевдонимы / виртуальные IP-адреса». Могут быть и другие ситуации, в которых это будет работать. grawity 6 лет назад 0

Похожие вопросы