«Я могу установить SSH-соединение с настольного компьютера на ноутбук и наоборот, предлагая мне открыть порт 22 на обоих компьютерах. Правильно?"
Да. Это указывает на то, что сервер SSH работает, и ни один программный брандмауэр (ни на одной машине) не блокирует этот трафик.
Обратите внимание, что это не означает, что вы можете использовать SSH из другой сети. Брандмауэр Windows может применять разные правила в зависимости от того, является ли сеть "Частной", "Публичной" или "Гостевой". То, что программный брандмауэр разрешает одно соединение, не означает, что другое соединение будет работать. Я не предполагаю, что это может быть источником вашей проблемы, но если это так, то может быть очень сложно обнаружить, если вы не думаете об этом.
Позвольте мне также убедиться, что вы понимаете, что такое "открытый порт". Мы имеем в виду номера портов TCP и номера портов UDP. Эти "порты" просто числа. Когда "порт" открыт, это означает, что с этим портом может быть установлено соединение.
Таким образом, когда кто-то пытается отправить запрос SSH на IP-адрес вашего дома, ваш провайдер покорно передает этот трафик на маршрутизатор в вашем здании. Если результатом является успешное соединение, то порт открыт.
Теперь есть два способа, которыми маршрутизатор может обрабатывать этот трафик таким образом, чтобы порт был открыт.
Одним из таких способов является запуск программы, которая отвечает на этот порт. Таким образом, для порта 22 это обычно означает, что на маршрутизаторе будет работать SSH-сервер. (А для порта 80 это обычно означает, что на маршрутизаторе запущен HTTP-сервер, который мы часто называем «веб-сервером».)
Другой возможный подход - маршрутизатор передает трафик другому устройству. Обычно это делается путем отправки трафика на устройство в другой подсети. Когда устройство делает это, оно "маршрутизирует" трафик. Вот почему мы часто называем эти вещи "маршрутизатором".
Для работы второго подхода маршрутизатору необходимо знать, в какую систему отправлять трафик. Это можно сделать с помощью процесса, называемого "переадресация портов". Все "переадресация портов" на самом деле включает в себя указание маршрутизатору, на какой номер порта ожидается трафик, а затем в какую систему поступает трафик.
Теперь, если вы проверите конфигурацию вашего маршрутизатора, вы можете обнаружить, что ваш раздел "переадресация портов" пуст. Итак, как можно маршрутизировать SSH в этом случае? Ну, у многих маршрутизаторов есть раздел конфигурации, называемый "демилитаризованной зоной", очень часто сокращенно "DMZ". То, как работает эта демилитаризованная зона, на самом деле является довольно специфическим правилом для переадресации портов. В итоге вы указываете, какой компьютер будет использовать маршрутизатор, и маршрутизатор отправит все порты на этот компьютер, если в разделе "Переадресация портов" не указано более конкретное правило. Я думаю, что большинство маршрутизаторов обычно не помещают DMZ в секцию переадресации портов, возможно, потому, что конфигурация DMZ может заставить маршрутизатор пересылать IP-трафик, отличный от этих портов.
В общем случае с входящим трафиком через порт 22 можно делать только одно. Итак, я полагаю, что можно сделать больше, чем одно, например, получить трафик из офиса в Сиэтле, чтобы перейти на ноутбук, а трафик из Токио - на рабочий стол. Однако такие сложные настройки не распространены. Что было бы гораздо более распространенным, так это просто переадресация портов для отправки другого порта (например, может быть 2222) на другую машину, и эта машина прослушивала нестандартный порт.
(Или пусть маршрутизатор выполняет некоторую трансляцию, поэтому входящий трафик через порт 2222 перенаправляется на стандартный порт 22 другой машины. Но тогда машине, которая получает трафик, даже не нужно знать, что порт 2222 привык. Сокрытие такой информации может сделать журналы менее полезными, и тогда вам нужно помнить, что маршрутизатор выполняет такой перевод. Вместо того, чтобы просто слушать порт 2222, все становится более понятным.)
Обратите внимание, что ICMP (используется ping и несколькими реализациями traceroute) не использует порт TCP или порт UDP. (ICMP сидит выше IP. Однако, несмотря на то, что IP использует "Уровень 3" сетевой модели OSI, ICMP на самом деле не может считаться протоколом на "Уровне 4" модели OSI, поскольку он не обеспечивает типичную функцию отслеживания разговоров, которая имеет тенденцию различать протокол "уровня 4".)
Итак, теперь вы видите, что ваш открытый порт 22 на маршрутизаторе не обязательно поможет обеим машинам получать трафик SSH.
Следует понимать, что ваш ZyXEL, вероятно, имеет два адреса IPv4 (при условии, что ваш Интернет использует IPv4). Одним из них является 192.168.1.1. Об этом адресе можно сказать нам безопасно, потому что это адрес, указанный в RFC 1918. Другой публичный адрес. Похоже, что этот адрес меняется (так как вы используете DynDNS). Не говорите нам этот адрес. (Для разговора вы можете сделать вид, что он начинается с «203.0.113.», Который на самом деле представляет собой набор адресов, зарезервированных для примеров / документации, как отмечено в RFC 5735, стр. 5. )
Вам может быть легче, просто не используя динамический DNS, а получая статический IP-адрес от вашего интернет-провайдера. Я знаю местного провайдера, где я (в США) могу выдать статический IP (клиенту) по запросу бесплатно. Они могут захотеть взимать с вас плату (и, если это так, вы также можете спросить, какая цена за /29, то есть блок из 8, из которых 5 обычно используются клиентом). Это не значит, что ваш маршрут динамического DNS не может работать, но я просто выбрасываю другой вариант для рассмотрения.
Сервис для ddns позволяет мне подключаться к моей домашней сети. Если я пытаюсь подключить порт 80, я просто получаю экран входа в систему для моего маршрутизатора, никаких проблем там нет.
Вы не сказали, какой IP-адрес вы используете при подключении к порту 80. Но поскольку вы сказали это сразу после разговора об использовании DDNS, похоже, вы говорите об использовании вашего публичного IP-адреса. Если это действительно так, то последний абзац ответа Дэниела Б. является вполне обоснованным предупреждением. Маршрутизаторы потребительского уровня известны своей недостаточной безопасностью для своих веб-интерфейсов, поэтому найдите параметр, который указывает, что ваш веб-интерфейс должен быть доступен только через проводное подключение к локальной сети. (Не доверяйте ни соединениям из Интернета, ни Wi-Fi.)