兼容ipv6
This commit is contained in:
parent
8c752000c5
commit
a568a05bf7
@ -126,10 +126,20 @@ namespace FastGithub.Dns
|
|||||||
packetLength += (uint)responsePayload.Length - packet.PacketPayloadLength;
|
packetLength += (uint)responsePayload.Length - packet.PacketPayloadLength;
|
||||||
|
|
||||||
// 修改ip包
|
// 修改ip包
|
||||||
var destAddress = packet.IPv4Header->DstAddr;
|
if (packet.IPv4Header != null)
|
||||||
packet.IPv4Header->DstAddr = packet.IPv4Header->SrcAddr;
|
{
|
||||||
packet.IPv4Header->SrcAddr = destAddress;
|
var destAddress = packet.IPv4Header->DstAddr;
|
||||||
packet.IPv4Header->Length = BinaryPrimitives.ReverseEndianness((ushort)packetLength);
|
packet.IPv4Header->DstAddr = packet.IPv4Header->SrcAddr;
|
||||||
|
packet.IPv4Header->SrcAddr = destAddress;
|
||||||
|
packet.IPv4Header->Length = BinaryPrimitives.ReverseEndianness((ushort)packetLength);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var destAddress = packet.IPv6Header->DstAddr;
|
||||||
|
packet.IPv6Header->DstAddr = packet.IPv6Header->SrcAddr;
|
||||||
|
packet.IPv6Header->SrcAddr = destAddress;
|
||||||
|
packet.IPv6Header->Length = BinaryPrimitives.ReverseEndianness((ushort)packetLength);
|
||||||
|
}
|
||||||
|
|
||||||
// 修改udp包
|
// 修改udp包
|
||||||
var destPort = packet.UdpHeader->DstPort;
|
var destPort = packet.UdpHeader->DstPort;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user