Fix gvisor loopback address
This commit is contained in:
parent
ff49ece55d
commit
d5865f2135
1 changed files with 2 additions and 2 deletions
|
|
@ -52,7 +52,7 @@ func (f *TCPForwarder) HandlePacket(id stack.TransportEndpointID, pkt *stack.Pac
|
||||||
ipHdr.SetSourceAddressWithChecksumUpdate(inet4LoopbackAddress)
|
ipHdr.SetSourceAddressWithChecksumUpdate(inet4LoopbackAddress)
|
||||||
tcpHdr := header.TCP(pkt.TransportHeader().Slice())
|
tcpHdr := header.TCP(pkt.TransportHeader().Slice())
|
||||||
tcpHdr.SetChecksum(0)
|
tcpHdr.SetChecksum(0)
|
||||||
tcpHdr.SetChecksum(^checksum.Checksum(tcpHdr.Payload(), tcpHdr.CalculateChecksum(
|
tcpHdr.SetChecksum(^checksum.Combine(pkt.Data().Checksum(), tcpHdr.CalculateChecksum(
|
||||||
header.PseudoHeaderChecksum(header.TCPProtocolNumber, ipHdr.SourceAddress(), ipHdr.DestinationAddress(), ipHdr.PayloadLength()),
|
header.PseudoHeaderChecksum(header.TCPProtocolNumber, ipHdr.SourceAddress(), ipHdr.DestinationAddress(), ipHdr.PayloadLength()),
|
||||||
)))
|
)))
|
||||||
f.tun.WritePacket(pkt)
|
f.tun.WritePacket(pkt)
|
||||||
|
|
@ -66,7 +66,7 @@ func (f *TCPForwarder) HandlePacket(id stack.TransportEndpointID, pkt *stack.Pac
|
||||||
ipHdr.SetSourceAddress(inet6LoopbackAddress)
|
ipHdr.SetSourceAddress(inet6LoopbackAddress)
|
||||||
tcpHdr := header.TCP(pkt.TransportHeader().Slice())
|
tcpHdr := header.TCP(pkt.TransportHeader().Slice())
|
||||||
tcpHdr.SetChecksum(0)
|
tcpHdr.SetChecksum(0)
|
||||||
tcpHdr.SetChecksum(^checksum.Checksum(tcpHdr.Payload(), tcpHdr.CalculateChecksum(
|
tcpHdr.SetChecksum(^checksum.Combine(pkt.Data().Checksum(), tcpHdr.CalculateChecksum(
|
||||||
header.PseudoHeaderChecksum(header.TCPProtocolNumber, ipHdr.SourceAddress(), ipHdr.DestinationAddress(), ipHdr.PayloadLength()),
|
header.PseudoHeaderChecksum(header.TCPProtocolNumber, ipHdr.SourceAddress(), ipHdr.DestinationAddress(), ipHdr.PayloadLength()),
|
||||||
)))
|
)))
|
||||||
f.tun.WritePacket(pkt)
|
f.tun.WritePacket(pkt)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue