Se você não se importar em ter um loop infinito em execução por algum tempo, poderá executar o netstat continuamente e filtrar a saída para o endereço IP do computador ao qual seu programa está se conectando. Eu sugiro usar endereços IP em vez de nomes de domínio, porque é muito mais rápido, reduzindo o tempo que cada chamada netstat leva e, portanto, aumentando as chances de realmente pegar o seu processo. Você deve executar o comando netstat como root, se achar que o processo não pertence ao usuário atualmente conectado. Então, primeiro use o nslookup para descobrir o IP do domínio:
nslookup weather.noaa.gov
Para mim, isso dá no momento: 193.170.140.70 e 193.170.140.80. Agora você pode colocar um loop infinito de netstats. A saída que você pode filtrar usando grep (e descartar STDERR).
while [ true ] ; do netstat -tunp 2>/dev/null | grep -e 193.170.140.70 -e 193.170.140.80 ; done
Claro, edite os endereços IP no exemplo acima. Este exemplo está testando conexões TCP e UDP (-tu), não faz resolução de DNS (-n) e lista os processos (-p). Se você acha que há tempo suficiente para fazer a resolução de DNS, simplesmente omita a opção -n para netstat e coloque o domínio para o grep em vez do IP. Você pode parar o loop infinito simplesmente pressionando CTRL + c
Espero que isso ajude, Andreas
PS: Eu sei, esta não é a maneira ideal, eficiente ou limpa de fazê-lo, mas para uma pesquisa única, isso deve ser suficiente.