NAME | SYNOPSIS | DESCRIPTION | OPTIONS | EXAMPLES | SEE ALSO | COLOPHON |
Checksum action in tc(8) Linux Checksum action in tc(8)
csum - checksum update action
tc ... action csum UPDATE UPDATE := TARGET [ UPDATE ] TARGET := { ip4h | icmp | igmp | tcp | udp | udplite | sctp | SWEETS } SWEETS := { and | or | + }
The csum action triggers checksum recalculation of specified packet headers. It is commonly used after packet editing using the pedit action to fix for then incorrect checksums.
TARGET Specify which headers to update: IPv4 header (ip4h), ICMP header (icmp), IGMP header (igmp), TCP header (tcp), UDP header (udp), UDPLite header (udplite) or SCTP header (sctp). SWEETS These are merely syntactic sugar and ignored internally.
The following performs stateless NAT for incoming packets from 192.168.1.100 to new destination 18.52.86.120 (0x12345678 in hex). Assuming these are UDP packets, both IP and UDP checksums have to be recalculated: # tc qdisc add dev eth0 ingress handle ffff: # tc filter add dev eth0 prio 1 protocol ip parent ffff: \ u32 match ip src 192.0.2.100/32 flowid :1 \ action pedit munge ip dst set 198.51.100.1 pipe \ csum ip and udp
tc(8), tc-pedit(8)
This page is part of the iproute2 (utilities for controlling TCP/IP
networking and traffic) project. Information about the project can
be found at
⟨http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2⟩.
If you have a bug report for this manual page, send it to
netdev@vger.kernel.org, shemminger@osdl.org. This page was obtained
from the project's upstream Git repository
⟨git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git⟩
on 2017-07-05. If you discover any rendering problems in this HTML
version of the page, or you believe there is a better or more up-to-
date source for the page, or you have corrections or improvements to
the information in this COLOPHON (which is not part of the original
manual page), send a mail to man-pages@man7.org
iproute2 11 Jan 2015 Checksum action in tc(8)