El --synindicador es útil para verificar el tráfico TCP, pero el NEWestado se puede usar para otros protocolos (incluidos TCP) como UDPy ICMP. Puedo decir que NEWes más general que la --synopción TCP.
Desde el manual de iptables, puede leer:
NEW meaning that the packet has started a new connection,
or otherwise associated with a connection which has not seen packets in both directions
Un ejemplo, una solicitud de DNS coincidirá con el NEWestado, pero no coincidirá con una regla con la --synopción. Simplemente, es un datagrama UDP.
Además, la --synopción se puede usar para verificar los paquetes TCP con una combinación de marcas incorrectas para descartarlos.
Además, puede usar ambas opciones juntas para verificar los NEWflujos TCP sin el --synprimer paquete y descartarlos como:
$ sudo iptables -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "New not syn:"
Aquí, estamos agregando este tipo de paquetes a una cadena definida por el usuario llamada bad_tcp_packetsa ser descartada / registrada, etc.