Назад | Перейти на главную страницу

telnet: подключиться к адресу :: 1: соединение отклонено

когда я бегу '(sleep 1; echo flush_all; sleep 1; echo quit; ) | telnet localhost 11211' я получил

Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
OK
Connection closed by foreign host.

Приведенная выше команда делает то, что я хочу, но как насчет ::1 часть?

Программное обеспечение, прослушивающее порт 11211, не поддерживает IPv6. Поскольку localhost - это запись в файле hosts, которая сначала пытается использовать адрес IPv6, вы возвращаетесь к IPv4 только после сбоя IPv6. Вы можете решить проблему, либо обновив программное обеспечение (или правильно настроив для прослушивания IPv6, если это опция в файле конфигурации), либо изменив свою команду на telnet 127.0.0.1 вместо того telnet localhost.

:: 1 - это адрес обратной связи IPv6, эквивалент петли IPv4 127.0.0.1.

Чтобы избежать соединения ipv6, используйте переключатель '-4':

$ telnet -4 localhost
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

То же самое с -6:

$ telnet -6 localhost
Trying ::1...
Connected to ::1.
Escape character is '^]'.

Он работает с множеством сетевых утилит, таких как wget, curl, ssh, ...