{
    "content": [
        {
            "type": "text",
            "text": "# RPCINFO (man)\n\n## NAME\n\nrpcinfo — report RPC information\n\n## SYNOPSIS\n\nrpcinfo [-m | -s] [host]\nrpcinfo -p [host]\nrpcinfo -T transport host prognum [versnum]\nrpcinfo -l [-T transport] host prognum versnum\nrpcinfo [-n portnum] -u host prognum [versnum]\nrpcinfo [-n portnum] [-t] host prognum [versnum]\nrpcinfo -a servaddress -T transport prognum [versnum]\nrpcinfo -b [-T transport] prognum versnum\nrpcinfo -d [-T transport] prognum versnum\n\n## DESCRIPTION\n\nrpcinfo makes an RPC call to an RPC server and reports what it finds.\n\n## TLDR\n\n> Make an RPC call to an RPC server and reports what it finds.\n\n- Show full table of all RPC services registered on localhost:\n  `rpcinfo`\n- Show concise table of all RPC services registered on localhost:\n  `rpcinfo -s localhost`\n- Display table of statistics of rpcbind operations on localhost:\n  `rpcinfo -m`\n- Display list of entries of given service name (mountd) and version number (2) on a remote nfs share:\n  `rpcinfo -l {{remote_nfs_server_ip}} {{mountd}} {{2}}`\n- Delete the registration for version 1 of the mountd service for all transports:\n  `rpcinfo -d {{mountd}} {{1}}`\n\n*Source: tldr-pages*\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **OPTIONS** (11 subsections)\n- **EXAMPLES**\n- **SEE ALSO**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "RPCINFO",
        "section": "",
        "mode": "man",
        "summary": "rpcinfo — report RPC information",
        "synopsis": "rpcinfo [-m | -s] [host]\nrpcinfo -p [host]\nrpcinfo -T transport host prognum [versnum]\nrpcinfo -l [-T transport] host prognum versnum\nrpcinfo [-n portnum] -u host prognum [versnum]\nrpcinfo [-n portnum] [-t] host prognum [versnum]\nrpcinfo -a servaddress -T transport prognum [versnum]\nrpcinfo -b [-T transport] prognum versnum\nrpcinfo -d [-T transport] prognum versnum",
        "tldr_summary": "Make an RPC call to an RPC server and reports what it finds.",
        "tldr_examples": [
            {
                "description": "Show full table of all RPC services registered on localhost",
                "command": "rpcinfo"
            },
            {
                "description": "Show concise table of all RPC services registered on localhost",
                "command": "rpcinfo -s localhost"
            },
            {
                "description": "Display table of statistics of rpcbind operations on localhost",
                "command": "rpcinfo -m"
            },
            {
                "description": "Display list of entries of given service name (mountd) and version number (2) on a remote nfs share",
                "command": "rpcinfo -l {{remote_nfs_server_ip}} {{mountd}} {{2}}"
            },
            {
                "description": "Delete the registration for version 1 of the mountd service for all transports",
                "command": "rpcinfo -d {{mountd}} {{1}}"
            }
        ],
        "tldr_source": "official",
        "flags": [
            {
                "flag": "-T",
                "long": null,
                "arg": null,
                "description": "Specify the transport on which the service is required. If this option is not speci‐ fied, rpcinfo uses the transport specified in the NETPATH environment variable, or if that is unset or null, the transport in the netconfig(5) database is used. This is a generic option, and can be used in conjunction with other options as shown in the SYN‐ OPSIS."
            },
            {
                "flag": "-a",
                "long": null,
                "arg": null,
                "description": "Use servaddress as the (universal) address for the service on transport to ping proce‐ dure 0 of the specified prognum and report whether a response was received. The -T op‐ tion is required with the -a option. If versnum is not specified, rpcinfo tries to ping all available version numbers for that program number. This option avoids calls to remote rpcbind to find the address of the service. The servaddress is specified in universal address format of the given transport."
            },
            {
                "flag": "-b",
                "long": null,
                "arg": null,
                "description": "all hosts that respond. If transport is specified, it broadcasts its request only on the specified transport. If broadcasting is not supported by any transport, an error message is printed. Use of broadcasting should be limited because of the potential for adverse effect on other systems."
            },
            {
                "flag": "-d",
                "long": null,
                "arg": null,
                "description": "transport is specified, unregister the service on only that transport, otherwise unreg‐ ister the service on all the transports on which it was registered. Only the owner of a service can delete a registration, except the super-user who can delete any service."
            },
            {
                "flag": "-l",
                "long": null,
                "arg": null,
                "description": "tries are returned for all transports in the same protocol family as that used to con‐ tact the remote rpcbind."
            },
            {
                "flag": "-m",
                "long": null,
                "arg": null,
                "description": "statistics for each version of rpcbind (versions 2, 3 and 4), giving the number of times each procedure was requested and successfully serviced, the number and type of remote call requests that were made, and information about RPC address lookups that were handled. This is useful for monitoring RPC activities on host."
            },
            {
                "flag": "-n",
                "long": null,
                "arg": null,
                "description": "Use portnum as the port number for the -t and -u options instead of the port number given by rpcbind. Use of this option avoids a call to the remote rpcbind to find out the address of the service. This option is made obsolete by the -a option."
            },
            {
                "flag": "-p",
                "long": null,
                "arg": null,
                "description": "all registered RPC programs. If host is not specified, it defaults to the local host. Note: Version 2 of the rpcbind protocol was previously known as the portmapper proto‐ col."
            },
            {
                "flag": "-s",
                "long": null,
                "arg": null,
                "description": "fied, it defaults to the local host."
            },
            {
                "flag": "-t",
                "long": null,
                "arg": null,
                "description": "whether a response was received. This option is made obsolete by the -T option as shown in the third synopsis."
            },
            {
                "flag": "-u",
                "long": null,
                "arg": null,
                "description": "whether a response was received. This option is made obsolete by the -T option as shown in the third synopsis."
            }
        ],
        "examples": [
            "To show all of the RPC services registered on the local machine use:",
            "example% rpcinfo",
            "To show all of the RPC services registered with rpcbind on the machine named klaxon use:",
            "example% rpcinfo klaxon",
            "The information displayed by the above commands can be quite lengthy.  Use the -s option to",
            "display a more concise list:",
            "example$ rpcinfo -s klaxon",
            "program   version   netid                     service    owner",
            "100000    2,3,4     local,tcp,udp,tcp6,udp6   rpcbind    super-user",
            "100008    1         udp,tcp,udp6,tcp6         walld      super-user",
            "100002    2,1       udp,udp6                  rusersd    super-user",
            "100001    2,3,4     udp,udp6                  rstatd     super-user",
            "100012    1         udp,tcp                   sprayd     super-user",
            "100007    3         udp,tcp                   ypbind     super-user",
            "To show whether the RPC service with program number prognum and version versnum is registered",
            "on the machine named klaxon for the transport TCP use:",
            "example% rpcinfo -T tcp klaxon prognum versnum",
            "To show all RPC services registered with version 2 of the rpcbind protocol on the local machine",
            "use:",
            "example% rpcinfo -p",
            "To delete the registration for version 1 of the walld (program number 100008 ) service for all",
            "transports use:",
            "example# rpcinfo -d 100008 1",
            "or",
            "example# rpcinfo -d walld 1"
        ],
        "see_also": [
            {
                "name": "rpc",
                "section": "3",
                "url": "https://www.chedong.com/phpMan.php/man/rpc/3/json"
            },
            {
                "name": "netconfig",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/netconfig/5/json"
            },
            {
                "name": "rpc",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/rpc/5/json"
            },
            {
                "name": "rpcbind",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/rpcbind/8/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 10,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 23,
                "subsections": []
            },
            {
                "name": "OPTIONS",
                "lines": 1,
                "subsections": [
                    {
                        "name": "-T",
                        "lines": 6,
                        "flag": "-T"
                    },
                    {
                        "name": "-a",
                        "lines": 9,
                        "flag": "-a"
                    },
                    {
                        "name": "-b",
                        "lines": 5,
                        "flag": "-b"
                    },
                    {
                        "name": "-d",
                        "lines": 4,
                        "flag": "-d"
                    },
                    {
                        "name": "-l",
                        "lines": 3,
                        "flag": "-l"
                    },
                    {
                        "name": "-m",
                        "lines": 5,
                        "flag": "-m"
                    },
                    {
                        "name": "-n",
                        "lines": 4,
                        "flag": "-n"
                    },
                    {
                        "name": "-p",
                        "lines": 4,
                        "flag": "-p"
                    },
                    {
                        "name": "-s",
                        "lines": 2,
                        "flag": "-s"
                    },
                    {
                        "name": "-t",
                        "lines": 3,
                        "flag": "-t"
                    },
                    {
                        "name": "-u",
                        "lines": 3,
                        "flag": "-u"
                    }
                ]
            },
            {
                "name": "EXAMPLES",
                "lines": 40,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 3,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "rpcinfo — report RPC information\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "rpcinfo [-m | -s] [host]\nrpcinfo -p [host]\nrpcinfo -T transport host prognum [versnum]\nrpcinfo -l [-T transport] host prognum versnum\nrpcinfo [-n portnum] -u host prognum [versnum]\nrpcinfo [-n portnum] [-t] host prognum [versnum]\nrpcinfo -a servaddress -T transport prognum [versnum]\nrpcinfo -b [-T transport] prognum versnum\nrpcinfo -d [-T transport] prognum versnum\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "rpcinfo makes an RPC call to an RPC server and reports what it finds.\n\nIn the first synopsis, rpcinfo lists all the registered RPC services with rpcbind on host.  If\nhost is not specified, the local host is the default.  If -s is used, the information is dis‐\nplayed in a concise format.\n\nIn the second synopsis, rpcinfo lists all the RPC services registered with rpcbind, version 2.\nAlso note that the format of the information is different in the first and the second synopsis.\nThis is because the second synopsis is an older protocol used to collect the information dis‐\nplayed (version 2 of the rpcbind protocol).\n\nThe third synopsis makes an RPC call to procedure 0 of prognum and versnum on the specified\nhost and reports whether a response was received.  transport is the transport which has to be\nused for contacting the given service.  The remote address of the service is obtained by making\na call to the remote rpcbind.\n\nThe prognum argument is a number that represents an RPC program number.  If a versnum is speci‐\nfied, rpcinfo attempts to call that version of the specified prognum.  Otherwise, rpcinfo at‐\ntempts to find all the registered version numbers for the specified prognum by calling version\n0, which is presumed not to exist; if it does exist, rpcinfo attempts to obtain this informa‐\ntion by calling an extremely high version number instead, and attempts to call each registered\nversion.  Note: the version number is required for -b and -d options.\n",
                "subsections": []
            },
            "OPTIONS": {
                "content": "",
                "subsections": [
                    {
                        "name": "-T",
                        "content": "Specify the transport on which the service is required.  If this option is not speci‐\nfied, rpcinfo uses the transport specified in the NETPATH environment variable, or if\nthat is unset or null, the transport in the netconfig(5) database is used.  This is a\ngeneric option, and can be used in conjunction with other options as shown in the SYN‐\nOPSIS.\n",
                        "flag": "-T"
                    },
                    {
                        "name": "-a",
                        "content": "Use servaddress as the (universal) address for the service on transport to ping proce‐\ndure 0 of the specified prognum and report whether a response was received.  The -T op‐\ntion is required with the -a option.\n\nIf versnum is not specified, rpcinfo tries to ping all available version numbers for\nthat program number.  This option avoids calls to remote rpcbind to find the address of\nthe service.  The servaddress is specified in universal address format of the given\ntransport.\n",
                        "flag": "-a"
                    },
                    {
                        "name": "-b",
                        "content": "all hosts that respond.  If transport is specified, it broadcasts its request only on\nthe specified transport.  If broadcasting is not supported by any transport, an error\nmessage is printed.  Use of broadcasting should be limited because of the potential for\nadverse effect on other systems.\n",
                        "flag": "-b"
                    },
                    {
                        "name": "-d",
                        "content": "transport is specified, unregister the service on only that transport, otherwise unreg‐\nister the service on all the transports on which it was registered.  Only the owner of\na service can delete a registration, except the super-user who can delete any service.\n",
                        "flag": "-d"
                    },
                    {
                        "name": "-l",
                        "content": "tries are returned for all transports in the same protocol family as that used to con‐\ntact the remote rpcbind.\n",
                        "flag": "-l"
                    },
                    {
                        "name": "-m",
                        "content": "statistics for each version of rpcbind (versions 2, 3 and 4), giving the number of\ntimes each procedure was requested and successfully serviced, the number and type of\nremote call requests that were made, and information about RPC address lookups that\nwere handled. This is useful for monitoring RPC activities on host.\n",
                        "flag": "-m"
                    },
                    {
                        "name": "-n",
                        "content": "Use portnum as the port number for the -t and -u options instead of the port number\ngiven by rpcbind.  Use of this option avoids a call to the remote rpcbind to find out\nthe address of the service. This option is made obsolete by the -a option.\n",
                        "flag": "-n"
                    },
                    {
                        "name": "-p",
                        "content": "all registered RPC programs.  If host is not specified, it defaults to the local host.\nNote: Version 2 of the rpcbind protocol was previously known as the portmapper proto‐\ncol.\n",
                        "flag": "-p"
                    },
                    {
                        "name": "-s",
                        "content": "fied, it defaults to the local host.\n",
                        "flag": "-s"
                    },
                    {
                        "name": "-t",
                        "content": "whether a response was received. This option is made obsolete by the -T option as shown\nin the third synopsis.\n",
                        "flag": "-t"
                    },
                    {
                        "name": "-u",
                        "content": "whether a response was received. This option is made obsolete by the -T option as shown\nin the third synopsis.\n",
                        "flag": "-u"
                    }
                ]
            },
            "EXAMPLES": {
                "content": "To show all of the RPC services registered on the local machine use:\n\nexample% rpcinfo\n\nTo show all of the RPC services registered with rpcbind on the machine named klaxon use:\n\nexample% rpcinfo klaxon\n\nThe information displayed by the above commands can be quite lengthy.  Use the -s option to\ndisplay a more concise list:\n\nexample$ rpcinfo -s klaxon\n\nprogram   version   netid                     service    owner\n100000    2,3,4     local,tcp,udp,tcp6,udp6   rpcbind    super-user\n100008    1         udp,tcp,udp6,tcp6         walld      super-user\n100002    2,1       udp,udp6                  rusersd    super-user\n100001    2,3,4     udp,udp6                  rstatd     super-user\n100012    1         udp,tcp                   sprayd     super-user\n100007    3         udp,tcp                   ypbind     super-user\n\nTo show whether the RPC service with program number prognum and version versnum is registered\non the machine named klaxon for the transport TCP use:\n\nexample% rpcinfo -T tcp klaxon prognum versnum\n\nTo show all RPC services registered with version 2 of the rpcbind protocol on the local machine\nuse:\n\nexample% rpcinfo -p\n\nTo delete the registration for version 1 of the walld (program number 100008 ) service for all\ntransports use:\n\nexample# rpcinfo -d 100008 1\n\nor\n\nexample# rpcinfo -d walld 1\n",
                "subsections": []
            },
            "SEE ALSO": {
                "content": "rpc(3), netconfig(5), rpc(5), rpcbind(8)\n\nAugust 18, 1992",
                "subsections": []
            }
        }
    }
}