示例#1
0
        private void SendPacket(DhcpMessageType dhcpMessageType, DhcpPacket responsePacket, IPAddress address, int port)
        {
            Console.WriteLine("{0:X8}: Sending packet type {1} to {2}:{3}", responsePacket.xid, dhcpMessageType, address, port);

            responsePacket.Options.SetByte(DhcpPacketOptionId.DhcpMessageType, (Byte)dhcpMessageType);

            var broadcast = address == IPAddress.Broadcast;

            responsePacket.flags = (UInt16)(broadcast ? 0x8000 : 0x0000);

            var bytes = responsePacket.ToArray();

            DhcpPacket.TraceToFile(bytes);

            var endPoint = new IPEndPoint(address, port);

            SendData(bytes, endPoint);

            Console.WriteLine("{0:X8}: Packet sent", responsePacket.xid);
        }
示例#2
0
 public DhcpPacket(DhcpPacket dhcpPacket) // for response packet
 {
     FromArray(dhcpPacket.ToArray());
 }