Para ocultar la diversidad de hardware que puede usarse en un entorno de red, TCP/IP define una interfaz abstracta a través de la cual se accede a dicho hardware. Esta interfaz ofrece un conjunto de operaciones que son las mismas para todos los tipos de hardware y básicamente trata con el envío y la recepción de paquetes.
Tiene que estar presente en el núcleo la correspondiente interfaz para cada dispositivo periférico de red. Por ejemplo, las interfaces Ethernet se llaman en GNU/Linux con nombres como eth0 y eth1; las interfaces PPP (discutido en Capítulo 8 ) se denominan ppp0 y ppp1; y a las interfaces FDDI se le da nombres como fddi0 y fddi1. Estos nombres de interfaz se usan para propósitos de configuración cuando se quiere especificar un dispositivo físico determinado en una orden de configuración, y no tienen significado más allá de este uso.
Antes de ser usada en una red TCP/IP, a una interfaz se le debe asignar una dirección IP que sirve como su identificador cuando se comunica con el resto del mundo. Esta dirección es distinta del nombre de interfaz mencionado anteriormente; si se compara una interfaz con una puerta, la dirección es como el número de la puerta.
Se pueden selecciónar otros parámetros de dispositivo como el tamaño máximo de los datagramas que pueden ser procesados por una parte del hardware determinada, a lo que se le denomina Maximum Transfer Unit (MTU). Hay otros atributos que se introducirán más tarde. Afortunadamente, la mayoría de esos atributos tienen valores por defecto muy acertados.