兼容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