misc/155134: Vlan hwtagging on fxp under 7.4-PRERELEASE doesn't work

YongHyeon PYUN pyunyh at gmail.com
Wed Mar 2 02:04:44 UTC 2011


On Tue, Mar 01, 2011 at 11:28:39PM +0100, Andrei Manescu - Ivorde wrote:
> Hi,
> 
> Thanks for replying.
> 
> When vlanhwtag is enabled on the fxp physical interface, the packets are 
> not vlan tagged and, sometimes, not replied:
> 
> [root at thor ~]# ifconfig fe-0/0
> fe-0/0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>     options=211b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,TSO4,WOL_MAGIC>
> 
> [root at thor ~]# ifconfig vlan10
> vlan10: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>     ether 00:02:b3:9f:ef:86
>     inet 192.168.3.2 netmask 0xffffff00 broadcast 192.168.3.255
>     media: Ethernet autoselect (100baseTX <full-duplex>)
>     status: active
>     vlan: 10 parent interface: fe-0/0
> 
> Consecutive commands:
> [root at thor ~]# ping -c 1 192.168.3.1                    --> NO REPLY
> PING 192.168.3.1 (192.168.3.1): 56 data bytes
> 
> --- 192.168.3.1 ping statistics ---
> 1 packets transmitted, 0 packets received, 100.0% packet loss
> [root at thor ~]# ping -c 1 192.168.3.1                    --> REPLY
> PING 192.168.3.1 (192.168.3.1): 56 data bytes
> 64 bytes from 192.168.3.1: icmp_seq=0 ttl=64 time=0.398 ms
> 
> --- 192.168.3.1 ping statistics ---
> 1 packets transmitted, 1 packets received, 0.0% packet loss
> round-trip min/avg/max/stddev = 0.398/0.398/0.398/0.000 ms
> 
> tcpdump of the above echo requests. Only the reply is tagged:
> [root at thor ~]# tcpdump -nni fe-0/0 -e
> tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
> listening on fe-0/0, link-type EN10MB (Ethernet), capture size 96 bytes
> 23:10:28.667909 00:02:b3:9f:ef:86 > 00:02:a5:8f:56:69, ethertype IPv4 
> (0x0800), length 98: 192.168.3.2 > 192.168.3.1: ICMP echo request, id 
> 17620, seq 0, length 64
> 23:10:44.196339 00:02:b3:9f:ef:86 > 00:02:a5:8f:56:69, ethertype IPv4 
> (0x0800), length 98: 192.168.3.2 > 192.168.3.1: ICMP echo request, id 
> 24788, seq 0, length 64
> 23:10:44.196616 00:02:a5:8f:56:69 > 00:02:b3:9f:ef:86, ethertype 802.1Q 
> (0x8100), length 102: vlan 10, p 0, ethertype IPv4, 192.168.3.1 > 
> 192.168.3.2: ICMP echo reply, id 24788, seq 0, length 64
> 
> The tcpdump clearly shows that for the first two packets (echo 
> requests), the ethertype is 0x0800 and it doesn't contain the vlan tag.
> 
> Now, if I disable the vlanhwtag on the physical interface, all gets back 
> to normal.
> 
> The physical interface is a supported 82550 chip.
> 
> [root at thor ~]# grep fe-0/0 /etc/rc.conf
> ifconfig_fxp0_name="fe-0/0"
> [root at thor ~]# pciconf -lv
> fxp0 at pci0:1:1:0:    class=0x020000 card=0x10408086 chip=0x12298086 
> rev=0x0c hdr=0x00
>     vendor     = 'Intel Corporation'
>     device     = '82550/1/7/8/9 EtherExpress PRO/100(B) Ethernet Adapter'
>     class      = network
>     subclass   = ethernet
> 

Your controller is i82550 Pro/100 Ethernet and it is known to
support TSO/VLAN hardware tagging as well as IPSec acceleration.

> Am I really off topic ?
> 

No, but looks strange to me. Could you capture both boxes(one for
sender(fxp0) and receiver to see whether the packets really have no
VLAN header.)?

> P.S.: I also attached a capture with one echo request and an echo reply. 
> The req leaving the FreeBSD box in question is not encapsulated, but the 
> reply is coming in (with the vlan tag).

I think the capture is incomplete since it only has sender side. I
need capture both sender and receiver.

> P.S.S.: At the other end, there is a pFsense 2.0-RC1 (FreeBSD 8.1) 
> firewall with vlans configured on an fxp0 interface also.
> 

Don't know about pfSense but you can disable VLAN hardware tagging
on pfSense side to rule out possible VLAN hardware related issues
before capturing VLAN traffic. Make sure to capture parent
interface traffic instead of vlan interface.

> 
> Thanks,
> Andrei.
> 


More information about the freebsd-bugs mailing list