Bash treats some paths as special and can do some network communication by writing to /dev/{udp|tcp}/host/port. Bash cannot setup a listening server, but can initiate a connection, and for TCP can read the results at least.

For example, to send a simple web request one could do:

exec 3</dev/tcp/www.google.com/80
printf 'GET / HTTP/1.0\\r\\n\\r\\n' >&3
cat <&3

and the results of www.google.com’s default web page will be printed to stdout.

Similarly

printf 'HI\\n' >/dev/udp/192.168.1.1/6666

would send a UDP message containing HI\\n to a listener on 192.168.1.1:6666