When running dynamic routing protocols, it is desirable to have a unique loopback address on each device taking part in the routing domain. OSPF uses the loopback as an identifier. BGP uses the loopback address as a next-hop destination.
By default, and by standard, Linux has lo addressed with 127.0.0.1. It is tagged as a host only address, as it is only reachable within the host.
$ ip addr show dev lo 1: lo:mtu 65536 qdisc noqueue state UNKNOWN group default link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever
To add an ip address which would be visible from the network:
$ ip addr add 10.0.0.1/32 dev lo $ ip addr show dev lo 1: lo:mtu 65536 qdisc noqueue state UNKNOWN group default link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet 10.0.0.1/32 scope global lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever
In the show command, 10.0.0.1/32 is shown as global, and therefore reachable from other subnets.
And the address can be removed just as easily:
$ ip addr delete 10.0.0.1/32 dev lo $ ip addr show dev lo 1: lo:mtu 65536 qdisc noqueue state UNKNOWN group default link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever