Я настроил переадресацию портов для моего Raspberry Pi, чтобы иметь возможность подключаться из Интернета через ssh. Когда я пытаюсь подключиться к своему Пи через интернет моего мобильного телефона, он работает отлично. Как только я пытаюсь подключиться через локальное соединение, он не работает с внешним ip. Просто с локальным айпи пи в моей сети. У меня есть маршрутизатор AVM FritzBox 4020 GM, подключенный к моему маршрутизатору Speedport W723V, который используется в качестве модема DSL.
2 ответа
Разве не было бы намного проще просто иметь две учетные записи в вашем ssh клиенте (ах) на мобильном устройстве (ах)? Одна учетная запись для подключения извне вашей локальной сети, а другая для случая, когда вы находитесь внутри локальной сети. Просто используйте разные IP в обоих аккаунтах.
Если у вас есть какой-нибудь приличный брандмауэр / маршрутизатор, такой как, например, pFsense, и у вас есть какое-то доменное имя, вы можете сопоставить свой внешний IP с вашим доменом / поддоменом, а на стороне локальной сети переопределить доменное имя, указав его на локальный IP-адрес Raspberry Pi. , Таким образом, вам нужно настроить имя домена ваших клиентов SSH только в качестве целевого IP для подключения. Когда вы находитесь за пределами вашей локальной сети, ваш клиент будет использовать общедоступный DNS для поиска вашего Pi, в противном случае при подключении к вашей локальной сети ваш брандмауэр / маршрутизатор будет переопределять общедоступный DNS, заменяя локальный IP-адрес Pi для этого конкретного домена.
Невозможно подключиться к внутреннему ресурсу, используя публичный IP-адрес из локальной сети
Это возможно только в том случае, если ваш маршрутизатор поддерживает NAT Reflection/NAT Loopback/NAT Hairpinning.
Многие маршрутизаторы потребительского уровня не поддерживают это.
Существует список на NAT маршрутизаторы возвратной петли маршрутизаторов , которые действительно имеют такую функциональность.
АВМ ФРИЦ!Box поддерживает loopback (согласно приведенной выше ссылке), поэтому вы должны иметь возможность заставить его работать в вашем конкретном случае.
Зачем нужен NAT Loopback?
Многие DSL-маршрутизаторы / модемы предотвращают петлевые соединения в качестве функции безопасности.
Это означает, что машина в вашей локальной сети (например, за вашим DSL-маршрутизатором / модемом) не может подключиться к IP-адресу, находящемуся в прямом направлении (например, 199.149.252.44) машины, которой он также принадлежит в вашей локальной сети.
Подключение к локальному IP-адресу (например, 192.168.2.40) той же машины работает нормально.
Исходные петлевые маршрутизаторы NAT