Quanto à referência oficial à sintaxe, man bash e pesquise o seção sobre Redirecionamentos.
to check connectivity on some ports for thousands of nodes from a Solaris box, where netcat or nc is not available
Uma maneira, usando o recurso de redirecionamento de rede do bash, seria fazer eco de algum texto na porta desse host e ver se ele foi bem-sucedido. O Bash retorna true / false com base em sua capacidade de se conectar a essa porta naquele host.
Exemplo de código, mostrando uma matriz de hosts, uma matriz de portas e tentativas de conexão a essas portas no TCP:
#!/bin/bash
hosts=(127.0.0.1 127.0.0.2 127.0.0.3)
ports=(22 23 25 80)
for host in "${hosts[@]}"
do
for port in "${ports[@]}"
do
if echo "Hi from Bharat's scanner at $(uname -n)" 2>/dev/null > /dev/tcp/"$host"/"$port"
then
echo success at "$host":"$port"
else
echo failure at "$host":"$port"
fi
done
done
Como o UDP é sem estado, o código de retorno do teste não é útil para a verificação. Você teria que usar O exemplo da AB para capturar a saída e ver se ela corresponde às suas expectativas.