Прослушивание трафика только от одного IP. Сниффинг. Cniffing. Не Клиент- Серверное приложение! - C#

Узнай цену своей работы

Формулировка задачи:

Всё просто, но и сложно Код задания для прослушивания трафика
        static Socket socket;
        static byte[] buffer;
 
            socket = new Socket(AddressFamily.InterNetwork, SocketType.Raw, ProtocolType.IP); //Делаем РАВ сокет
            socket.Bind(new IPEndPoint(IPAddress.Parse("192.168.0.13"), 21)); //Привязываем к сокету конечную точку 10.10.7.215 127.0.0.1
            socket.SetSocketOption(SocketOptionLevel.IP,  //Applies only to IP packets
                           SocketOptionName.HeaderIncluded, //Set the include header
                           true);
 
            byte[] byTrue = new byte[4] { 1, 0, 0, 0 };
            byte[] byOut = new byte[4];
 
            socket.IOControl(IOControlCode.ReceiveAll, byTrue, byOut); //
Это сложная программа, найденная на этом форуме, поэтому привожу лишь часть, где инициализируется соке. Задача сделать так, чтобы прослушивался трафик только одного IP , например только с сервера яндекс или vk. Остальное не надо. Где это вообще настраивается? При задании сокета( код выше) Или при обработки пакетов( код ниже)
int nReceived = socket.EndReceive(ar);//Длина сообщения
 
                //Если создался пакет, добавить его в коллекцию
                Packet n = new Packet(buffer, nReceived);
                if (n.IsFilled)
                {
                    Data.UpdateList(n); //Передаем пакет в лист первого окна
                }
            }
            catch (Exception ex)
            {
                if (!ex.Message.Contains("disposed"))
                    MessageBox.Show(ex.Message);
            }
            finally
            {
                SocketReload(); //Перезагружаем сокет
            }

Решение задачи: «Прослушивание трафика только от одного IP. Сниффинг. Cniffing. Не Клиент- Серверное приложение!»

textual
Листинг программы
IPEndPoint clientEp = clientSocket.RemoteEndPoint as IPEndPoint;
string clientIp = clientEp.Address.ToString();
if(clientIp == "123.123.123.123")
{
//...
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.909 из 5
Похожие ответы