У меня есть удаленный хост C, доступный с помощью telnet с хоста B. С хоста A я использую ssh для создания переадресации порта для доступа к telnet-серверу хоста C.
Я использую следующую команду на hostA
ssh -n -l root <ip HostB> -L3015:<private ip hostC>:23 -N -t -t
С помощью этой команды я могу использовать telnet localhost 3015 для подключения к telnet-порту hostC, но в зависимости от модели / устройства hostC, telnet работает построчно или символьно. Я хочу, чтобы telnet всегда работал в символьном режиме.
Я знаю, что могу изменить режим с помощью команд telnet, но мне нужно принудительно включить этот режим, не выходя из приглашения telnet (telnet>). Я не знаю, есть ли какая-то среда для экспорта или какой-либо флаг / параметры для передачи клиента telnet (я ничего не вижу на странице руководства).
Конечно, если я подключаюсь с помощью telnet от хоста A или хоста B к хосту C, режим telnet всегда является символьным (а не построчным)
Не совсем следую тому, что вы пытаетесь сделать ...
Однако вы можете указать команды telnet для каждого хоста или установить его для всех хостов с хостом DEFAULT с вашими файлами $ HOME / .telnetrc или / etc / telnetrc. См. Раздел "открытый хост" на странице руководства telnet.
Было бы полезно, если бы вы сообщили нам, какой telnet-клиент или, по крайней мере, какую ОС вы используете. Во многих системах, если вы используете telnet на порт, отличный от 23 (или любой другой "telnet", соответствующий в / etc / services), клиент не будет выполнять никаких согласований протокола. Это отлично подходит для ручной отладки HTTP- или POP-сервера, но не так хорошо в вашем случае.
Согласно справочным страницам telnet в Linux, OS X и Cygwin, поставив минус перед номером порта, например telnet localhost -3015
должен принудительно согласовывать нестандартный порт. На странице руководства по Solaris об этом не упоминается. Я понятия не имею, что предлагает стандартный клиент telnet для Windows.