tap interface and locally generated packets

Maksim Yevmenkin maksim.yevmenkin at savvis.net
Sun May 8 08:41:18 PDT 2005


Patrick,

> I have been working with tap interfaces, bridging and openvpn
> 
> Bridging works perfectly, and openvpn does too
> 
> Packet pings from the tap interface works to any ip address, on the 
> local machine or computer on the bridged network
> 
> Attempting to make a tcp connection works for bridged network, but not 
> the machine the tap interface is on
> 
> I have found this is due to tcp checksums not being generated, Packets 
> recieved over the tap interface on the client machine have blank (bad) 
> checksums.
> 
> I have looked at the source and it seems there is no interface to add 
> the checksums to be generated for the tap interface.

tap(4) interface should not modify anything inside the packet. the whole 
point is to accept _complete_ ethernet frame from user-space (just as it 
comes from the wire) and pass it up the stack.

my guess would be that something else is not generating proper ip 
checksum. just a crazy thought: are you offloading ip checksum'ing to 
your ethernet card? if so, please try to disable it and see if it helps.

thanks,
max


More information about the freebsd-net mailing list