Допустим, я и мой друг соединяем наши компьютеры кабелем локальной сети.
Я пинг своего друга с его IP-адресом.
Как это работает?
Поскольку мы находимся в одной сети, нам даже не нужны IP-адреса?
Разве IP-адресация не имеет значения только в случае межсетевого взаимодействия?
Что команда ping сделает со своим IP-адресом? Как он в конечном итоге найдет его физический адрес (адрес NIC)? (здесь нет ARP, потому что это будет связано с маршрутизатором на границе сети, что здесь не применимо).
Я где то не прав?
networking
ip
learner
источник
источник
Ответы:
Вы спрашиваете о Модель сети OSI даже если вы этого не понимаете, и хотя модель OSI не совсем относится к TCP / IP.
Как работает компьютерная сеть в слои , Уровни в модели OSI:
Чтобы два компьютера могли общаться по сети, они должны говорить одинаково сеть протокол уровня. Это не обязательно должен быть IPv4 или IPv6, это может быть IPX или X.25. Но это должно быть что-то ,
Мы просто примем IPv4, так как это наиболее распространенный вариант.
Оба компьютера будут нуждаться в IP-адресе. В этот день и возраст, скорее всего, им будет назначен один из серверов DHCP или они будут динамически назначаться с помощью ZeroConf. Поэтому они будут есть IP-адреса.
Что происходит, когда вы пингуете?
Первый компьютер, инициирующий сеанс, отправит пакет ARP широковещательного уровня 2. ARP - это протокол разрешения адресов. ARP используется для обнаружения адреса уровня 2, связанного с конкретным адресом уровня 3. Широковещательная рассылка - это специальный пакет, который инструктирует сетевому коммутатору отправлять пакет на все физические порты с подключенным каналом (т. Е. С подключением L1). Компьютер с указанным адресом уровня 3 будет отвечать одноадресным ARP-ответом. ARP происходит полностью через адресацию L2 (результаты ARP кэшируются для последующего поиска, поэтому не нужно продолжать посылать запросы ARP).
следующий пакет эхо-запроса ICMP создается. Адрес L2 источника будет Ether-адресом исходного компьютера. Источником L3 будет IP-адрес исходного компьютера. Адрес L2 и L3 получателя будут теми, которые обнаружены из ARP. Пакет затем отправляется по проводу на коммутатор.
Коммутатор проверяет адрес L2 назначения и смотрит в него CAM таблица, чтобы определить, какой физический порт имеет указанный адрес Ether. Пакет затем отправляется по проводам на правильный физический порт.
когда целевой компьютер получает его, сначала он проверяет адрес L2, чтобы убедиться, что он совпадает с адресом L2 физического интерфейса, который получил пакет. Если он совпадает, он проверяет адрес L3, чтобы убедиться, что он совпадает с адресом уровня 3, назначенным физическому интерфейсу. Если все это проверено, то пакет будет обрабатываться протоколами верхнего уровня (в этом случае ICMP, обрабатывается ядром). Если нет, пакет отбрасывается.
Для ответа ICMP все работает примерно так же, за исключением того, что отвечающему компьютеру не нужно отправлять запрос ARP, поскольку он получил пакет с парой L2 / L3, он может установить его непосредственно в кэш ARP.
источник
Эмм. Технически нет.
Но если вы хотите общаться по TCP / IP тогда вам нужен один. И почти все это использует.
Ваш компьютер проверяет, находится ли целевой IP в той же подсети.
Если это так (проверка таблицы маршрутизации!), То он проверяет, кэширован ли он ARP.
Нет arp - & gt; ARP discovery Затем эхо-запрос ICMP (эхо-запрос) отправляется по IP на сетевой адаптер назначения (на основе MAC-адреса назначения).
Он будет смотреть в кеше ARP, и, если адресата там нет, будет транслироваться пакет, который сводится к «У кого есть IP номер a.b.c.d?». И на это ПК ответит: «Я MAC aa: bb: cc: dd: ee: ff. У меня есть IP a.b.c.d.»
Нет ARP будет использоваться. ARP очень локальный. ARP не будет использоваться один раз за пределами локальной сети (и, следовательно, ARP за пределами маршрутизатора).
Нет.
Я даже не буду пытаться написать хороший длинный ответ. Вместо этого я укажу вам на этот хорошо написанный ранее пост: https://serverfault.com/questions/49765/how-does-ipv4-subnetting-work
источник
Если вы общаетесь по IP, то вам нужен IP-адрес. Без IP-адреса назначения пинг не может функционировать.
источник
Ваша путаница идет глубже, чем может ответить даже длинный пост. Вам нужно прочитать хороший сетевой учебник.
Если вы не хотите тратить время, попробуйте прочитать страницы Википедии на APIPA , ARP и разница между сетевой уровень и канальный уровень , но это только начало.
источник