NETINFO(5)
β¨ NETINFO(5) β¨
okay bestie, gather round, because this is the NetInfo page from the AFS File Reference and it's literally the glow-up guide for telling AFS servers which of your machine's faces to show the world π
π NAME π
NetInfo β defines the machine interfaces you register with AFS servers. that's it, that's the whole vibe, but the details are where it gets juicy πΈ
π¦ DESCRIPTION π¦
So there are two NetInfo files, and they are NOT the same file, do not get it twisted:
- one for an AFS client
- one for an AFS File Server or database server
The client NetInfo file says which IP addresses the client should register with the File Servers it connects to. The server NetInfo file says which interfaces should be registered with AFS Database Servers, or used to talk to other database servers. Two files, two jobs, both iconic, no cap β¨
π Client NetInfo π
The client NetInfo file lists the IP addresses of one or more of the local machine's network interfaces. Here's the tea though: it only counts if it lives in the /etc/openafs directory when the Cache Manager initializes. If it's there? The Cache Manager uses its contents as the basis for a list of local interfaces. If it's not there? The Cache Manager just uses the list of interfaces configured with the operating system, no big deal.
Then it removes from that list any addresses that appear in the /etc/openafs/NetRestrict file, if that file exists. Ghosted π«₯ After that, the Cache Manager records the resulting list in kernel memory. And the very first time it establishes a connection to a File Server, it registers the list with that File Server. periodt.
Now, why does the File Server even care about these addresses? Because it uses them when it initiates a remote procedure call (RPC) to the Cache Manager β which is different from just answering an RPC the Cache Manager sent it. There are two common circumstances where the File Server is the one starting the conversation:
- when it breaks callbacks π
- when it pings the client machine to verify that the Cache Manager is still accessible π
The NetInfo file is in ASCII format. One of the machine's IP addresses appears on each line, in dotted decimal format. If you want to match a whole network instead of an individual address, you use a slash (/) followed by a subnet length. easy peasy.
Here's the ordering lore: the File Server initially uses the address that matches first in the list. The order of the remaining addresses is not significant, because if an RPC to the first interface fails, the File Server simultaneously sends RPCs to all of the other interfaces in the list. Whichever interface replies first is the one the File Server then sends pings and RPCs to break callbacks. first reply wins, main character energy fr fr π
π« To prohibit the Cache Manager absolutely from using one or more addresses, list them in the NetRestrict file. like, no take-backs, no negotiations.
A few commands to keep in your back pocket:
- use
fs getclientaddrsto display the addresses the Cache Manager is currently registering with File Servers - use
fs setclientaddrsto replace the current list of interfaces with a new one between reboots of the client machine
π Server NetInfo π
The server NetInfo file, if present in the /var/lib/openafs/local directory, defines the following:
- On a file server machine, the local interfaces that the File Server (
fileserverprocess) can register in the Volume Location Database (VLDB) at initialization time. - On a database server machine, the local interfaces that the Ubik database synchronization library uses when communicating with the database server processes running on other database server machines.
If the NetInfo file exists when the File Server initializes, the File Server uses its contents as the basis for a list of interfaces to register in the VLDB. Otherwise, it uses the list of network interfaces configured with the operating system. Then (same ritual as the client side) it removes from the list any addresses that appear in the /var/lib/openafs/local/NetRestrict file, if it exists. The File Server records the resulting list in the /var/lib/openafs/local/sysid file and registers the interfaces in the VLDB. β¨ The database server processes use a similar procedure when initializing, to figure out which interfaces to use for communication with the peer processes on other database machines in the cell.
The NetInfo file is in ASCII format. One of the machine's IP addresses appears on each line, in dotted decimal format. To match a network instead of an individual address, use a slash (/) followed by a subnet length. And unlike the client file, here the order of the addresses is not significant. that's right, no first-match drama here π
Optionally, the File Server can be forced to use an IP address that does not belong to one of the server interfaces. To do this, add a line to the NetInfo file with the IP address prefixed with f and a space. This is useful when the File Server is on the internal side of a NAT firewall. yes, that little f is doing a lot of heavy lifting π§
- use
vos listaddrsto display the File Server interface addresses registered in the VLDB
π EXAMPLES π
Say the File Server is on the internal side of a NAT firewall, where it serves internal clients using the IP address 192.168.1.123 and external clients using the IP address 10.1.1.321. Then the NetInfo file should contain the following:
192.168.1.123
f 10.1.1.321
look at that f on the second line, so subtle, so powerful β¨
π₯ SEE ALSO π₯
NetRestrict(5)sysid(5)vldb.DB0(5)fileserver(8)fs_getclientaddrs(1)fs_setclientaddrs(1)vos_listaddrs(1)
π COPYRIGHT π
IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.
This documentation is covered by the IBM Public License Version 1.0. It was converted from HTML to POD by software written by Chas Williams and Russ Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.
okay that's the whole page bestie, you're officially NetInfo literate π this was the OpenAFS NETINFO(5) page, dated 2026-07-27, and you ate it, no crumbs left ππ¦
π¦ where this page comes from
- ubuntu stonking: openafs-client 1.8.16.1-1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms