Вы находитесь на странице: 1из 11

Seguridad

3 Grado de Ingeniera Informtica


Prctica Cortafuegos con IPTables

Distribucin de Linux Ubuntu: http://www.ubuntu.com/download/desktop


Aplicacin para la creacin de una mquina virtual VirtualBox:
https://www.virtualbox.org/
Pgina de IPTables: http://www.netfilter.org/projects/iptables/
Artculo de la red Criptopolis dedicado a IPTables: http://www.kriptopolis.org/iptables0

En esta prctica se pretende conocer la utilidad IPTables como firewall de un sistema Linux. En
las siguientes secciones se explica y detalla el funcionamiento del mismo. Para poder probar de
un modo prctico el funcionamiento del mismo se recomienda la creacin de una mquina
virtual con VirtualBox donde instalar una imagen de la distribucin Ubuntu de GNU\Linux. Esto
es voluntario pero recomendable.
La prctica consistir en un cuestionario donde el estudiante deber demostrar que
comprende el funcionamiento y configuracin de IPTables.
Las cuestiones sern del siguiente estilo:

Dada la siguiente reglas

/sbin/iptables -A INPUT -p tcp -m tcp --sport 20:21 -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp --dport 20:21 -j ACCEPT

Y sabiendo que los puertos 20 y 21 estn asociados a FTP, podramos conectarnos o


no a un servidor FTP?
Un servicio P2P se conecta en los puertos 4661 y 4662, qu reglas debemos escribir
para permitir que estn bloqueado este servicio?
Qu regla de IPTables es necesaria para reenviar todas las peticiones del puerto 3306
a otra mquina que ejecuta un gestor de base de datos.

El cuestionario incluir cuestiones de seleccin de opciones, de seleccin mltiple y respuesta


corta.
1

Seguridad
3 Grado de Ingeniera Informtica
Prctica Cortafuegos con IPTables

IPtables es un sistema de firewall vinculado al kernel de Linux que se ha extendido


enormemente a partir del kernel 2.4 de este sistema operativo, desarrollado dentro del
proyecto netfilter (http://www.netfilter.org/). Es un firewall de filtrado de paquetes
Un firewall de iptables no es como un servidor que lo iniciamos o detenemos o que se pueda
caer por un error de programacin: iptables est integrado con el kernel, es parte del sistema
operativo. En realidad, las distribuciones de Linux ofrecen posibilidad de configurar un
cortafuego en modo visual, pero en la prctica vamos a configurar un shell que acte como
cortafuegos, a base de reglas de IPTables, lo que nos ayudar a comprender mejor el
funcionamiento de este tipo de software. En la prctica, vamos a aplicar una configuracin para
un cortafuego local, como medida de seguridad en profundidad. No obstante, IPTables tambin
se puede aplicar como cortafuegos perimetral.
Es cierto que ha tenido alguna vulnerabilidad conocida durante su existencia, como el
que permitiese la realizacin de ataques DoS (Dennied of Service o denegacin de servicio), pero
no es ni mucho menos tan 'frgil' como puede llegar a ser un servidor que tengamos que iniciar
aparte del equipo para que vigile la red y que en cualquier momento se pueda caer, o como
alguna aplicacin de terceros que mantengamos en servicio escuchando ciertos puertos.
Realmente lo que se hace con IPTables es aplicar reglas para el filtrado de trfico. Para ellos se
ejecuta el comando iptables, con el que aadimos, borramos, o creamos reglas. Por ello un
firewall de iptables no es sino un simple script de shell en el que se van ejecutando las reglas de
firewall.
IPtables se inicia junto con el sistema y se mantiene activo todo el tiempo, adecundose y
aplicando a todo el trfico de red las reglas que se le hayan configurado previamente. Para
explicarlo de una forma muy simplista, tenemos que abstraernos del equipo y olvidar por un
momento toda la configuracin especfica de nuestra mquina. Teniendo en cuenta que las
reglas de IPtables estn a nivel de Kernel, el Kernel lo que recibe es un paquete de datos y
decidir qu hacer con l. Es ahora cuando, dependiendo de si el paquete es para nuestro equipo
o para otro, consultar las reglas de IPtables y decidir lo que har con el paquete segn dichas
reglas. Segn la configuracin aplicada, el paquete de datos de red pasar por nuestro equipo
sin ser procesado, entrar se procesar y saldr, o directamente ser devuelto.
No obstante, hay que tener en cuenta que se puede implementar un script de inicio en
/etc/rc.d/INIT.d (o /etc/INIT.d ) con el que hagamos que iptables se "inicie o pare" como un
servidor ms. Lo podemos hacer nosotros o es probable que venga en la distribucin.
2

Seguridad
3 Grado de Ingeniera Informtica
Prctica Cortafuegos con IPTables
Las reglas de filtrado de los paquetes en IPtables se agrupan en cadenas. Una cadena es un
conjunto de reglas que se aplican para determinar que se debe hacer con los paquetes que
entras, salen o atraviesan el firewall. Las cadenas se agrupan en tablas.
Este es el camino que seguira un paquete en el kernel:

Como se ve en el grfico, bsicamente se mira si el paquete esta destinado a la propia maquina


o si va a otra. Para los paquetes (o datagramas, segn el protocolo) que van a la propia mquina
se aplican las reglas INPUT (entrada) y OUTPUT (salida), y para filtrar paquetes que van a otras
redes o mquinas se aplican simplemente reglas FORWARD.
INPUT, OUTPUT y FORWARD son los tres tipos de reglas de filtrado. Pero antes de aplicar esas
reglas es posible aplicar reglas de NAT: estas se usan para hacer redirecciones de puertos o
cambios en las IPs de origen y destino. E incluso antes de las reglas de NAT se pueden meter
reglas de tipo MANGLE, destinadas a modificar los paquetes; son reglas poco conocidas y es
probable que no se usen al configurar el firewall.
Por tanto tenemos tres tipos de reglas en iptables:

MANGLE
NAT: reglas PREROUTING, POSTROUTING
FILTER: reglas INPUT, OUTPUT, FORWARD

Disponemos de una mquina linux conectada a internet y queremos protegerla con su


propio firewall. Lo nico que tenemos que hacer es crear un script de shell en el que se
van aplicando las reglas.
Antes de ello, vamos a realizar una sencilla prueba para comprobar que hay
conectividad en internet. Ejecuta por ejemplo, el comando ping www.google.es, y
comprueba que obtenemos respuesta del servidor de Google. Si no hay conectividad,
repara primero este problema...
En sistemas GNU/Linux, IPtables no es necesario instalarlo pues viene incorporado en el ncleo3

Seguridad
3 Grado de Ingeniera Informtica
Prctica Cortafuegos con IPTables
de GNU/Linux. Es una aplicacin que contiene una serie de cadenas de reglas de filtrado en 3
tablas. Atender al orden de dichas reglas es muy importante, ya que lee de manera secuencial
las cadenas de reglas. Es decir, comienza por la primera y verifica que se cumpla la condicin,
en caso afirmativo la ejecuta sin verificar las siguientes.
Por consiguiente, si la primera regla en una determinada tabla es rechazar cualquier paquete,
las siguientes reglas no sern verificadas.
La estructura de una orden de iptables sigue el siguiente patrn:
iptables -t [tabla] - -[tipo_operacin] -- [cadena]-- [regla_con_parmetros] - - [accin].
Veremos un ejemplo de comando para entender su estructura:
iptables -t filter -A FORWARD -i ethO -s 192.168.2.100 -p tcp --dport 80 -j ACCEPT.

El tipo de operacin es aadir una regla (A), sobre la tabla filter (tabla por defecto de
filtrado), y cadena FORWARD (trfico enrutado).
La regla: aceptar (ACCEPT) el trfico TCP cuyo puerto de destino sea el 80 (HTTP), en el
interfaz ethO con IP origen 192.168.2.100.

Las opciones ms usadas de iptables son: iptables -L

-L: listar las cadenas de reglas de una determinada tabla (por defecto filter).
-F: elimina y reinicia a los valores por defecto todas las cadenas de una determinada
tabla.
-A: aadir cadena de regla a una determinada tabla.
-P: aadir regla por defecto, en caso de que no cumpla ninguna de las cadenas de regla
definidas.

Para sistemas en los que no se haya definido anteriormente reglas para Iptables el resultado
de ejecutar el comando iptables -L tiene que ser similar a permitir todo el trfico.
En IPTables existen cinco tablas: filter, NAT, mangle, raw o security. En esta prctica nos
centraremos en las tres primeras. Adems, existen extensiones que permiten crean ms
tablas.
De las tres tablas que hemos mencionado, cada una de las cuales contiene ciertas cadenas
predefinidas:

Filter table (Tabla de filtros): Esta tabla es la responsable del filtrado (es decir, de
bloquear e permitir que un paquete contine su camino). Todos los paquetes pasan a
travs de la tabla de filtros. En este caso las acciones que podemos realizar sobre los
paquetes son ACCEPT, DROP, REJECT QUEUE. Contiene las siguientes cadenas
predefinidas y cualquier paquete pasar por una de ellas:
o INPUT chain (Cadena de ENTRADA) -Todos los paquetes destinados a este
4

Seguridad
3 Grado de Ingeniera Informtica
Prctica Cortafuegos con IPTables

sistema atraviesan esta cadena (tambin denominada LOCAL_INPUT o


ENTRADA_LOCAL).
o OUTPUT chain (Cadena de SALIDA) - Todos los paquetes creados por este
sistema atraviesan esta cadena (tambin denominada LOCAL_OUTPUT o
SALIDA_LOCAL).
o FORWARD chain (Cadena de REDIRECCIN) - Todos los paquetes que pasan
por este sistema para ser encaminados a su destino recorren esta cadena.
NAT table (Tabla de traduccin de direcciones de red) - Esta tabla es la responsable
de configurar las reglas de traduccin de direcciones o de puertos de los paquetes. En
este caso el firewall se comportar como un servidor NAT que reenvia paquetes desde
un origen a un destino siguiendo las reglas establecidas. En este tipo de reglas
tenemos dos opciones posibles SNAT (enmascaramiento de IP) DNAT(reenvio de
puertos). Contiene las siguientes cadenas redefinidas:
o PREROUTING chain (Cadena de PRERUTEO) - Los paquetes entrantes pasan a
travs de esta cadena antes de que se consulte la tabla de enrutado.
o POSTROUTING chain (Cadena de POSRUTEO) - Los paquetes salientes pasan
por esta cadena despus de haberse tomado la decisin de enrutado.
o OUTPUT chain (Cadena de SALIDA).
Mangle table (Tabla de destrozo) - Esta tabla es la responsable de ajustar las opciones
de los paquetes, como por ejemplo la calidad de servicio. Todos los paquetes pasan por
esta tabla. Est diseada para efectos avanzados, y contiene todas las cadenas
predefinidas anteriormente. SE encargan de la modificacin de los paquetes, como los
TTL o TOS por ejemplo, en el momento que se le especifique. No es utilizada
normalmente por lo que no nos detendremos mucho en este apartado. Slo comentar
que hasta el Kernel 2.4.17 se compona de 2 cadenas; PREROUTING para modificar los
paquetes entrantes antes de enrutarlos hacia el siguiente nivel de IPtables, y OUTPUT
para alterar paquetes generados localmente antes de enrutarlos. Desde el Kernel 2.4.18
tres nuevas cadenas se implementaron en las tablas MANGLE; INPUT para modificar
paquetes entrantes, FORWARD para alterar paquetes que a continuacin sern
enrutados a travs de IPtables y POSTROUTING para cambiar paquetes que estn listos
para salir.

A la hora de definir una orden de iptables podremos seleccionar la tabla a la que va destinada
dicha orden mediante el parmetro -t:
iptables -t [nat |filter | mangle ]
Los modificadores o parmetros ms usuales en las reglas de iptables son los siguientes:
Parmetro
-i
-o
--dport

Descripcin
Interfaz de entrada (eth0, ethl, eth2 ).
Interfaz de salida (eth0, ethl, eth2 ... ).
Puerto de origen (puede indicarse el nombre o el nmero de puerto

Seguridad
3 Grado de Ingeniera Informtica
Prctica Cortafuegos con IPTables
del protocolo, p.ej: http 80)
--sport
Puerto destino (puede indicarse el nombre o el nmero de puerto del
protocolo, p.ej : http 80).
-p
El protocolo del paquete a comprobar: tcp, udp, icmp all. Por defecto
es all.
-j
Especifica el objetivo de la cadena de reglas, o sea una accin.
--line-numbers
Cuando listamos las reglas, agrega el nmero que ocupa cada regla
dentro de la cadena.
Las acciones que estarn siempre al final de cada regla (despus de -j) que determinar que
hacer con los paquetes afectados por la regla puede ser:

ACCEPT: Paquete paquete aceptado.


REJECT: Paquete paquete rechazado. Se enva notificacin a travs del protocolo
ICMP.
DROP: Paquete paquete rechazado. Sin notificacin.
QUEUE: Paquete copiado al espacio del usuario. Sirve para procesar paquetes aunque
no vayan dirigidos al firewall.
DNAT: Enmascaramiento enmascaramiento de la direccin destino, muy conveniente
para re-enrutado de paquetes. Slo valida en la tabla NAT
SNAT: Enmascaramiento enmascaramiento de la IP origen de forma similar a
masquerade, pero con IP fija. Slo vlida en la tabla NAT.

Lo primero para trabajar con IPTables es abrir una consola de Linux. En caso de que IPTables
no estuviera instalado, habra que instalarlo desde la consola con el comando (para
distribuciones Ubuntu): sudo apt-get iptables
Para comprobar las reglas que estn activas en este momento podemos usar desde esa
consola la orden: iptables L -v.
Podemos comenzar con establecer una poltica global. Las siguientes tres reglas establecen
una poltica por defecto que acepta cualquier conexin por defecto:
iptables --policy INPUT ACCEPT
iptables --policy OUTPUT ACCEPT
iptables --policy FORWARD ACCEPT

Otra poltica alternativa sera la de no permitir ninguna conexin entrante. En este caso
tendramos que usar las siguientes rdenes:

Seguridad
3 Grado de Ingeniera Informtica
Prctica Cortafuegos con IPTables
iptables --policy INPUT DROP
iptables --policy OUTPUT DROP
iptables --policy FORWARD DROP

Una opcin intermedia es REJECT, que no permite la conexin pero informa mediante un error
de la razn por la que la conexin no ha sido admitida:
iptables --policy INPUT REJECT
iptables --policy OUTPUT REJECT
iptables --policy FORWARD REJECT

Podemos aplicar una de las tres polticas por defecto y comprobar su efecto mediante el
comando ping.
Podemos querer bloquear las conexiones provenientes de una sola direccin IP, en ese caso
deberamos crear una regla como la siguiente:
iptables -A INPUT -s 10.10.10.10 -j DROP

O bien desde un rango de direcciones IP, en ese caso usuariamos la regla:


iptables -A INPUT -s 10.10.10.0/24 -j DROP
Esta regla sera equivalente a
iptables -A INPUT -s 10.10.10.0/255.255.255.0 -j DROP
En estas reglas tambin podemos sustituir DROP por REJECT o ACCEPT.
Otra posibilidad es que queramos filtran las conexiones entrantes en base al puerto TCP. Por ejemplo,
queremos bloquear las conexiones SSH desde 10.10.10.10:
iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -j DROP
Se puede reemplazar ssh por un nmero de puerto (por ejemplo 21) o bien por un protocolo conocido
como ftp. Dado que p indica que protocolo de transporte se usa. Si quisiramos bloquear un protocolo
que usara UDP, deberamos usar p udp.
Para bloquear las conexiones desde cualquier direccin IP para el protocolo SSH usaramos la siguiente
regla:
iptables -A INPUT -p tcp --dport ssh -j DROP
Algunos protocolos van a requerir comunicacin bidireccional. Por ejemplo, las conexiones SSH necesitan
una regla en la cadena de entrada y otra regla en la cadena de salida. A veces nos interesa permitir
conexiones bidireccionales iniciadas por otro usuario hacia nuestro servidor, pero no que nuestro servidor
inicie una conexin dirigidas hacia terceros. En estas ocasiones, nos interesa gestionar esta comunicacin
bidireccional de otra forma a la vista hasta ahora en base a IPs y puertos. Luego lo haremos en base al
estado de la conexin establecida. Por ejemplo, queremos que permitir conexiones con SSH desde
10.10.10.10 hacia nuestro servidor pero no queremos que nuestro servidor se conecte a 10.10.10.10. Sin
7

Seguridad
3 Grado de Ingeniera Informtica
Prctica Cortafuegos con IPTables
embargo, queremos que el sistema permita enviar informacin sobre SSH mientras la sesin ha sido
establecida, lo que permite la comunicacin entre estos dos hosts posible. Lo podemos conseguir con las
siguientes reglas:
iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -d 10.10.10.10 -m state --state ESTABLISHED -j ACCEPT

Para borrar todos los cambios que hemos realizado usamos el comando: iptables F.
Si queremos que estos cambios realizados por consola duren ms alla del reinicio del
ordenador hemos de almacenarlos mediante el comando (si estamos usando Ubuntu):
sudo /sbin/iptables-save

Como ya hemos visto en el apartado anterior, las reglas que tuvisemos aplicadas en IPtables,
desaparecen al reiniciar el equipo.
Si hemos introducido una a una las reglas a IPTables por comando podemos salvarlas mediante
la orden (en distribuciones Ubuntu) sudo /sbin/iptables-save.
Sin embargo, otra alternativa es escribir todas las reglas en un fichero que se cargue
automticamente cuando iniciemos sesin. Para solucionar este problema con unas cuantas
lneas de comandos con las que podremos programar un script (conjunto de rdenes
concatenadas y contenidas en un archivo) para que las reestablezca al inicio del sistema.
Lo primero que tendremos que hacer ser el script con las reglas que nos interese aplicar. Para
esto nos iremos a cualquier editor de texto que conozcamos y crearemos un fichero que
contendr todas las reglas de nuestra poltica.
Los scripts de iptables pueden tener este esquema:
1. Saludo (echo)
2. Borrado de las reglas aplicadas actualmente (flush)
3. Aplicacin de polticas por defecto para INPUT, OUPUT, FORWARD
4. Listado de reglas iptables (ACCEPT = aceptar, DROP = no aceptar)
Ojo con el orden de las reglas!. Cuando llega un paquete, se intentar equiparar a
alguna de las reglas del listado de la fase 4 (por orden), y si no equipara con ninguna, se aplicar
la poltica por defecto definida en la fase 3.
Un ejemplo sera el siguiente script:
#!/bin/bash
# -- UTF 8 --

Seguridad
3 Grado de Ingeniera Informtica
Prctica Cortafuegos con IPTables
iptables="/sbin/iptables"
LAN="eth0"
WIFI="wlan0"
echo ""
## Limpiar tablas ##
$iptables -F
$iptables -X
$iptables -Z
#echo " - FLUSH a iptables, correcto." && echo""
## Definir poltica DROP por defecto ##
$iptables -P INPUT DROP
$iptables -P FORWARD DROP
#echo " - Poltica DROP aplicada por defecto, correcto." && echo""
## Permitir todo a localhost ##
$iptables -A INPUT -i lo -j ACCEPT
#echo " - Permitido acceso total para localhost, correcto." && echo""
## Permitir entrar paquetes de conexiones que yo inicie ##
$iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#echo " - Permitidos paquetes de conexiones realizadas por mi equipo, correcto." && echo""
echo " ------- IPTABLES CORRECTAMENTE CONFIGURADO -------"

Este fichero vamos a almacenarlo con el nombre por ejemplo de activar-firewall


dentro de la carpeta /etc del sistema. Probablemente deberemos ser superusuario
(root) para tener permisos para almacenarlo.
Abrimos ahora un terminal de Linux y debemos darle permisos de ejecucin al fichero,
lo que realizamos mediante la orden chmod:
chmod +x /etc/activar-cortafuegos

Y por ltimo especificamos en el sistema que queremos que se ejecute dicho script, modificando
el archivo con nombre 'rc.local' que encontramos en la carpeta /etc. Abrimos terminal y
escribimos esto:
nano /etc/rc.local
Y directamente nos abrir el archivo en un editor de texto que tendremos que dejar tal que as:
#!/bin/sh -e
#
# rc.local

Seguridad
3 Grado de Ingeniera Informtica
Prctica Cortafuegos con IPTables
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/etc/activar-cortafuegos
exit 0
Y con esta modificacin al iniciar la mquina se aplicarn las reglas de nuestro cortafuegos de
forma automtica. Slo comentar que la carpeta donde se crea o aloja el script y el nombre de
este son totalmente personalizables, siempre que luego se especifique en el 'rc.local' la ruta
absoluta del mismo.

Una vez tenemos nuestro firewall funcionando desearemos en algn momento comprobar si
ha ocurrido alguna alerta o bien usar los logs para analizar y detectar alguna posible amenaza.
Lo primero es que en nuestras reglas hemos de aadir LOG log-prefix mensaje para que
cuando se detecten los mensajes asociados se aada automticamente al log esta informacin.
Por ejemplo:
iptables -A INPUT -j LOG -log-prefix Actividad del cortafuegos (INPUT)
iptables -A OUTPUT -j LOG -log-prefix Actividad del cortafuegos (OUTPUT)
iptables -A FORWARD -j LOG -log-prefix Actividad del cortafuegos (FORWARD)
Luego tenemos que guardar los cambios si al principio no habamos aadido la opcin LOG a
las reglas correspondientes:
service iptables save
Para visualizar estos mensajes basta con la orden
tail f /var/log/messages
Por defecto, la mayora de los logs del sistema se guardan en el fichero /var/log/messages pero
en este caso vamos a configurar un nuevo fichero para que almacene nicamente los logs que
generaremos con algunas reglas en IpTables, creando as su propio archivo de registro.
1
0

Seguridad
3 Grado de Ingeniera Informtica
Prctica Cortafuegos con IPTables
Lo primero que debemos hacer es configurar el archivo /etc/syslog.conf, que se trata de un
archivo de configuracin en el que se indica el modo en que los mensajes del sistema son
bitacorizados a travs de la utilidad syslogd que se instala y configura por defecto en todos los
sistemas GNU/Linux. Debemos aadir al final del fichero la siguiente sentencia:
kern.warning /var/log/iptables.log
Con esto indicamos que se almacenen los mensajes provienen del kernel con prioridad 4 o
superior ('warning' es el nivel de prioridad 4) en el archivo /var/log/iptables.log y se ignora el
resto de prioridad inferior (debug, info y notice que son del 3 haca abajo) generalmente
irrelevantes.
Por ltimo, para visualizar esta informacin debemos abrir el fichero /var/log/iptables.log con
cualquier editor de texto con el que estemos familiarizado.
La informacin dentro de este fichero se ordena de izquierda a derecha siguiendo al modelo
OSI de abajo hacia arriba, primero lo referido a enlace de datos (iface, MAC), luego a red
(direccin IP, TOS) y por ultimo de transporte (puerto, ACK, etc.).
Se dar un breve detalle de cada campo ya que hay informacin que podra no estar presente
dependiendo de la cadena dentro de la que se realizo el registro de algunos de los protocolos
que intervienen en el caso.

Dec 21: es el mes y el da del registro. (21 de diciembre).


10:31:41: es la hora en la que se aadi el registro al archivo de log.
Usuario-desktop: es el nombre de la maquina que realiza el log .
kernel: [ 4081.617746]: es el cdigo del log del ncleo.
IPTABLESFORWARD: es el prefijo que hemos aadido en la sentencia de iptables para
diferenciar los registros que provienen de iptables de cualquier otro registro.
IN=ethO OUT=: interfaces de red por la cual entr la trama y por la cual va a salir.
MAC: informacin que maneja la capa MAC (Media Access Control, junto a LLC
conforman la capa de enlace de datos). Se concatenan los 6 bytes de la direccin MAC
destino con los 6 de origen y como se trata de un datagrama 1Pv4 el cdigo es 0800.
SRC y DST: IP origen y destino.
LEN : longitud total del datagrama, hace referencia al campo LT de la cabecera IP (del
bit 17 al 32) y no al campo IHL (longitud de la cabecera, del bit 5 al 8).
TOS y PREC: campo tipo de servicio de la cabecera IP, por lo general es 00 y con PREC
(precedencia)OxOO.
TTL y ID: time to live (tiempo de vida) y el campo ID utilizado para recomponer
fragmentos.
PROTO, SPT y DPT: en este caso, protocolo de transporte y puertos de origen y
destino. El valor de PROTO se obtiene del campo protocolo de la cabecera IP. El SPT y
DPT son algoritmos de control.
1
1