1. A method implemented at least in part by a mobile node, the method comprising: creating a connection to a correspondent node and communicating from the mobile node to the correspondent node over the connection, while the mobile node is at a first address; connecting to a network location; receiving, in response to connecting to the network location, a second address differing from the first address; registering the second address with an authoritative name server without using a home agent, wherein the registering comprises: specifying the second address for the mobile node; and specifying a supplementary value configured to prevent the second address from being cached within one or more non-authoritative name servers; issuing a first binding update to the correspondent node, wherein a specified destination address for the first binding update specifies a first correspondent node address; registering, in response to issuing the first binding update, a binding update failure with regard to the first binding update issued to the correspondent node at the first correspondent node address; issuing a naming query requesting a current address of the correspondent node; receiving a naming query response to the naming query including a second correspondent node address for the correspondent node that differs from the first correspondent node address; issuing a second binding update to the correspondent node, wherein a specified destination address for the second binding update specifies the second correspondent node address; receiving, at the mobile node while at the second address, a communication from the correspondent node that indicates that a destination of the communication is the second address; replacing the destination address of the communication with the first address such that the destination of the communication is the first address; and making the communication available to a client program executing on the mobile node.