Ejemplo n.º 1
0
 private void ProcesarBusquedaDeDireccionIP(DatosFrameArpBuscando datosFrameBuscando, string macOrigen)
 {
     if (_puerto.IPAddress == datosFrameBuscando.IpDestino)
     {
         DatosFrameArpIPEncontrada datosFrameEncontrada = new DatosFrameArpIPEncontrada(_puerto.IPAddress, _puerto.MACAddress,datosFrameBuscando.IdPacket);
         EnviarFrame(datosFrameEncontrada, macOrigen);
     }
 }
Ejemplo n.º 2
0
        private void ProcesarIPEncontrada(DatosFrameArpIPEncontrada datosFrame)
        {

            if (datosFrame.DireccionIP == _puerto.IPAddress)
                return;
            if (_protocoloArp.ContieneLaDireccionDe(datosFrame.DireccionIP))
                return;
            if (!_paquetesNoEnviadosConDestino.ContainsKey(datosFrame.DireccionIP))
                return;
            _protocoloArp.ActualizarARP(datosFrame);
            Dictionary<Guid, Packet> paqueteNoEnviados = _paquetesNoEnviadosConDestino[datosFrame.DireccionIP];
            EnviarPaquete(paqueteNoEnviados[datosFrame.IdPacketOriginal], datosFrame.DireccionIP);



        }
Ejemplo n.º 3
0
 public void ActualizarARP(DatosFrameArpIPEncontrada datosFrame)
 {
    
     _IP_To_MAC.Add(datosFrame.DireccionIP, datosFrame.MacAddress);
     OnCambioDeTablaDeArp();
 }