Существует простая команда TUI для настройки того, настраиваете ли вы сеть на сервере или в локальной системе.
Используйте команду ниже и выполните шаги -:
$ sudo nmtui
После настройки сети. Активируйте сеть. Перезапустите сетевую службу.
$ sudo systemctl restart network
Рассматриваемый код фактически не зависит от / dev / tcp
, существующего в файловой системе. Скорее, это особенность самого Bash. Например, если вы напишете простой HTTP-запрос к файловому дескриптору 3 в своем примере, вы должны получить ответ:
> ls /dev/tcp ls: /dev/tcp: No such file or directory
> exec 3<>/dev/tcp/google.com/80
> echo -e "GET / HTTP/1.1\n\r" >&3
> cat <&3
HTTP/1.1 302 Found
Cache-Control: private
Content-Type: text/html;
charset=UTF-8
[...SNIP...]
Если это не работает в вашей оболочке, возможно, что используемая вами оболочка по умолчанию не есть эта особенность.
К другим популярным способам установления соединений TCP / UDP внутри сценариев оболочки относятся утилиты netcat
и socat
.