De acordo com a documentação:
O utilitário rpcbind [3] mapeia os serviços RPC para as portas nas quais eles escutam. Os processos RPC notificam o rpcbind quando iniciam, registrando as portas nas quais estão ouvindo e os números do programa RPC que esperam servir. O sistema do cliente entra em contato com rpcbind no servidor com um número de programa RPC específico. O serviço rpcbind redireciona o cliente para o número de porta apropriado para que ele possa se comunicar com o serviço solicitado
Para testar isso, configurei um servidor e cliente NFS e monitorei o tráfego entre eles. Pelo que vi, o cliente já sabia que o serviço NFS no servidor estava escutando na porta 2049.
Então, quando o rcpbind entra em ação? Quando eu faço rpcinfo
no servidor, recebo o seguinte:
100003 2 udp 0.0.0.0.8.1 nfs superuser
100003 3 udp 0.0.0.0.8.1 nfs superuser
100003 2 udp6 ::.8.1 nfs superuser
100003 3 udp6 ::.8.1 nfs superuser
100003 2 tcp 0.0.0.0.8.1 nfs superuser
100003 3 tcp 0.0.0.0.8.1 nfs superuser
100003 2 tcp6 ::.8.1 nfs superuser
100003 3 tcp6 ::.8.1 nfs superuser
o que 0.0.0.0.8.1
significa neste caso? E como isso se traduz na porta 2049?