Bug #8980
closedDisabling hardware checksums does not disable IPv6 transmit checksum
100%
Description
system_advanced_network.php, checking "Disable hardware checksum offload" disables most checksum options but not TXCSUM_IPV6 (txcsum6, IPv6 transmit checksum)
Option unchecked:
igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=6400bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
Option checked:
igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=4400b8<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWTSO,TXCSUM_IPV6>
Updated by Henry P almost 6 years ago
-- drive by coder --
What it looks like is that in pfSense.c (FreeBSD-Ports) the IFCAP_RXCSUM_IPV6 & IFCAP_TXCSUM_IPV6 are only present for the caps key and not the encaps key.
See: https://github.com/pfsense/FreeBSD-ports/blob/devel/devel/php-pfSense-module/files/pfSense.c#L2896
This means it can never reach isset($options['encaps']['txcsum6']) in pfsense-utils.php
See https://github.com/pfsense/pfsense/blob/master/src/etc/inc/pfsense-utils.inc#L549
Updated by Anonymous almost 6 years ago
- Target version changed from 2.4.4-GS to 2.4.4-p1
Updated by Renato Botelho almost 6 years ago
- Status changed from New to Feedback
- % Done changed from 0 to 100
Fixed in php-pfSense-module 0.65
Updated by Danilo Zrenjanin almost 6 years ago
- Status changed from Feedback to Resolved
Disabling hardware checksums did not disable IPv6 transmit checksum on 2.4.4-RELEASE.
After upgrading to:
2.4.5-DEVELOPMENT (amd64) built on Wed Nov 14 23:01:04 EST 2018 FreeBSD 11.2-RELEASE-p4
IPv6 transmit checksum has been disabled:
igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=400b8<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWTSO> ether 00:90:0b:7a:86:1b hwaddr 00:90:0b:7a:86:1b inet6 fe80::290:bff:fe7a:861b%igb0 prefixlen 64 scopeid 0x1 inet 172.21.10.105 netmask 0xffffff00 broadcast 172.21.10.255 nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL> media: Ethernet autoselect (1000baseT <full-duplex>) status: active
I did the testing on SG-5100 appliance.