An empty result from tipc nametable show can mean two very different things: nothing published, or no working path to TIPC. Mixing those up wastes an afternoon. This read-only command shows the kernel's TIPC publication table and explains each column in it. It does not publish a service, remove a publication or change a bearer.
Allow about ten minutes. You need the iproute2 package and a system where TIPC is configured if you want real rows to appear. The examples use iproute2 6.1.0-1ubuntu6.4, the package version installed on this machine. Other releases can format output differently, so treat the field meanings as stable concepts and the exact spacing as presentation.
Start by checking which executable your shell will run and recording the package version:
$ command -v tipc
/usr/sbin/tipc
$ dpkg-query -W -f='${Package} ${Version}\n' iproute2
iproute2 6.1.0-1ubuntu6.4
The command is normally run as an ordinary user. Reading the table is not an administrative change. Do not add sudo automatically: privilege can affect which network namespace and environment you are inspecting, and it does not create a TIPC configuration.
Run the documented subcommand:
$ tipc nametable show
Type Lower Upper Port Identity Publication Scope
1000 1 1 1.1 42 cluster
The sample row is illustrative. A working system with no current publications may print only the heading, while a system without a usable TIPC netlink family will fail instead. The command's exit status is the first useful checkpoint:
$ tipc nametable show > /tmp/tipc-nametable.txt
$ status=$?
$ printf 'exit=%s\n' "$status"
exit=0
Redirecting standard output is safe here because the command only reads state. The temporary file is just a capture for review; it is not a TIPC configuration file. If you use a named file, choose one you do not mind replacing.
The table describes TIPC publications, which bind a port name to a socket in the TIPC cluster. Read the fields from left to right:
node, cluster or zone.For example, a row with type 1000, lower 10 and upper 12 describes instances 10 through 12 under type 1000. It does not mean that TCP ports 10, 11 and 12 are open. TIPC names and IP transport ports are separate systems.
The manpage documents -j or --json for JSON output, and -p or --pretty for indented JSON. Put the options anywhere in the command chain. Compact JSON is suitable for a parser:
$ tipc -j nametable show
[{"type":1000,"lower":1,"upper":1,"port": {"node":1,"ref":1},"publication":42,"scope":"cluster"}]
The exact key layout and numeric values depend on the installed iproute2 and the live table. Use pretty output when a human needs to inspect it:
$ tipc -j -p nametable show
[
{
"type": 1000,
"lower": 1,
"upper": 1,
"publication": 42,
"scope": "cluster"
}
]
Do not build a parser around whitespace from the plain table. If you need machine-readable data, request JSON explicitly and validate the command's exit status before consuming the file.
These outcomes are easy to confuse:
Unable to get TIPC nl family id (module loaded?) and exits with status 255.Capture both output streams while preserving the status:
$ tipc nametable show > /tmp/tipc-table.out 2> /tmp/tipc-table.err
$ status=$?
$ printf 'exit=%s\n' "$status"
$ sed -n '1,20p' /tmp/tipc-table.err
exit=255
Unable to get TIPC nl family id (module loaded?)
This is a diagnostic boundary, not a repair command. Check the kernel's TIPC support, the active network namespace and the service's own publication logs before changing anything. Loading modules, enabling TIPC or configuring bearers can affect networking and needs an explicit operational plan. Nothing in nametable show requires a rollback.
TIPC state is associated with a network namespace. A command run in a container, a service unit or a shell entered with nsenter may not see the same table as a host shell. Record the namespace context alongside the result:
$ readlink /proc/$$/ns/net
net:[4026531840]
$ tipc nametable show
Type Lower Upper Port Identity Publication Scope
Compare the namespace identifier only with care: it is a clue about context, not a publication count. If two otherwise identical checks disagree, first make sure they run in the same namespace and against the same TIPC cluster. A local publication can also be visible only at node scope, while cluster and zone scopes cover wider domains described by the TIPC configuration.
tipc resolves to the expected iproute2 installation.tipc nametable show returned status 0, or its non-zero diagnostic was captured and understood.