IFrame в Jupyter используют сетевой маршрут браузера
Отличайте загрузку в удалённом ядре Jupyter от встроенной навигации браузера и используйте разрешённый маршрут SOCKS, когда браузеру нужен удалённый выход.
Встраивание сайта через IPython.display.IFrame создаёт HTML iframe. Браузер, показывающий блокнот, затем переходит по этому URL собственным маршрутом браузера.
Вызов Requests в удалённом ядре — другая операция: этот HTTP-клиент работает там, где работает ядро. Установка прокси-переменных в ядре не настраивает запрос iframe браузера.
Если браузер должен использовать разрешённую удалённую машину как свой выход, существующая учётная запись SSH может предоставить локальный прослушиватель SOCKS:
ssh -N -D 127.0.0.1:1080 [email protected]
Затем настройте нужный трафик браузера на использование SOCKS5 по адресу 127.0.0.1:1080, включая DNS удалённого назначения при необходимости. Держите сеанс SSH запущенным. SSH открывает соединения с назначением со своей удалённой стороны; убедитесь, что у этого хоста есть нужный маршрут, особенно когда ядро блокнота работает в другом контейнере или на другой машине.
Самому URL сервера блокнота может понадобиться прямое исключение в браузере, чтобы новый маршрут не нарушил доступ к блокноту. Ограничения iframe сайта также остаются в силе: смена сетевого выхода не даёт разрешения встраивать страницу, которая запрещает фрейминг.