Я не знаю, связана ли это с конкретной проблемой Azure или для интерфейса может быть назначен другой IP-адрес, отличный от общедоступного IP-адреса того же сервера.
Я использую общедоступный IP-адрес, указанный на портале Azure, для ssh на моем компьютере. Однако когда я это сделаю ip a
на машине он возвращает inet в третьем блоке с именем docker0, который полностью отличается от public-ip. Я хочу получить доступ к Jupyterhub, запущенному на моей машине, я попробовал оба адреса, но ни один из них не работал.
Это обычное дело. AWS делает то же самое. Вашему серверу постоянно назначен IP-адрес из частного блока адресов. Вы можете использовать эти адреса для связи между вашими серверами.
Когда вы назначаете серверу публичный адрес, он фактически транслируется, и сервер об этом не знает. Он нужен вам, чтобы иметь возможность подключаться к серверу извне.
Если вы можете подключиться к серверу, но какая-то служба недоступна, вам следует проверить несколько вещей:
netstat -lutpn
. Он должен прослушивать частный IP-адрес, назначенный серверу, или все адреса (0.0.0.0).iptables -L
.