Я читал книгу, в которой говорилось, что MAC-адрес (физический адрес) будет изменяться при каждом переходе, но IP-адрес (логический адрес) останется таким же на изображении. Пожалуйста, помогите мне понять это. Спасибо
Имейте в виду, что MAC-адреса имеют значение только локально.
Когда исходная станция (станция A) отправляется для передачи пакета (скажем, станции z), она проверяет IP-адрес Z, собственный IP-адрес A и маску сети A. Как только он определит, что Z не находится в локальной подсети, он смотрит в свою таблицу маршрутизации, чтобы узнать, может ли он добраться до сети, в которой находится Z. Большинство серверов будет иметь для этого маршрут по умолчанию, но может иметь несколько маршрутов, настроенных статически или динамически.
Как только A находит подсеть Z в своей таблице маршрутизации, он выполняет arp IP-адреса шлюза (g1), который может добраться до Z. Теперь A имеет MAC-адрес g1. Он помещает кадр в сеть с исходным IP-адресом A, IP-адресом назначения z, исходным MAC-адресом A, но Mac-адресом назначения g1. Вот как он попадает в шлюз. (IP-адреса никогда не трогаются)
Итак, теперь рама добралась до g1. Шлюз повторяет процесс, проверяя, подключена ли подсеть Z локально или нет. Если это так, то это arp для Mac-адреса Z. Получив это, он отправляет кадр с исходным IP-адресом A, IP-адресом назначения Z, исходным MAC-адресом выходного интерфейса шлюза, но на этот раз Mac-адресом назначения Z.
Z не является локальным, и есть еще один маршрутизатор, тогда шлюз получит IP-адрес g2 и получит его MAC-адрес. Затем он снова отправит кадр, на этот раз с IP-адресом источника A, IP-адресом назначения Z, исходным Mac-адресом выходных интерфейсов g1 и Mac-адресом назначения входных интерфейсов g2. Это продолжается до тех пор, пока пакет не достигнет места назначения.
По сути, исходный MAC-адрес постоянно меняется, но исходит от последнего устройства, которое передало кадр, а MAC-адрес назначения продолжает меняться, но это следующее устройство, на которое отправляется кадр, пока оно в конечном итоге не станет фактической станцией Z.
Кроме того, это только в мире Ethernet. Пакеты также могут перемещаться по различным физическим средам, таким как T1 или sonet, которые работают иначе, чем Ethernet, и вообще не имеют MAC-адресов. (хотя потенциально что-то эквивалентное для этой среды)
Для повышения управляемости и совместимости сетевые протоколы организованы по уровням (вы, вероятно, слышали термин «сетевой стек» или «стек сетевого протокола»). Эталонной моделью для этого многоуровневого подхода является Модель OSI:
Для каждого уровня существует протокол, который определяет связь между локальным и удаленным компонентами на одном уровне, и каждый компонент определяет / реализует интерфейсы только со своими соседними компонентами (выше и ниже).
Общение в Ethernet (слой 2) использует MAC-адреса для определения источника и назначения Кадр Ethernet. Каждый интерфейс, подключенный к эфиру, получает все кадры, но обрабатывает только те, которые отправлены на его собственный MAC-адрес (CSMA / CD). Связь на уровне Ethernet не может выходить за рамки широковещательный домен, потому что MAC-адреса могут быть только решено в этом разделе сети.
Если вы хотите адресовать хост за пределами вашего Ethernet, вы не можете разрешить его MAC-адрес, поэтому вы поднимаетесь на один уровень в стеке протоколов (уровень 3) и используете другой механизм адресации (IP). В протокол Интернета проверяет, находится ли пункт назначения в пределах его собственного подсеть и - если это не так - отправляет его в маршрутизатор. Если сеть назначения (например, 192.168.23.0/24) отсутствует в хосте таблица маршрутизации это шлюз по умолчанию, в противном случае маршрутизатор определяется адресом шлюза соответствующего маршрута.
Теперь происходит то, что отправляющий хост создает IP-пакет со своим собственным адресом (например, 192.168.10.10) в источнике и целевым адресом (192.168.23.13) в поле назначения и передает его на уровень Ethernet. Там пакет инкапсулируется в кадры Ethernet с собственным MAC-адресом отправляющего интерфейса в поле источника. маршрутизатор MAC-адрес в поле назначения.
На интерфейсе Ethernet маршрутизатора кадры повторно собираются в IP-пакет и передаются на уровень IP. Маршрутизатор видит по IP-адресу назначения, что пакет не отправляется самому маршрутизатору, поэтому он передает пакет в соответствии со своей собственной таблицей маршрутизации. Затем пакет передается на интерфейс, связанный с адресом следующего маршрутизатора, и повторно инкапсулируется в кадр Ethernet, но на этот раз с первый роутер MAC-адрес в поле источника и второй роутер MAC-адрес в поле назначения.
Этот процесс повторяется для каждого сегмента Ethernet, который пакет пересекает на пути к месту назначения.
Когда IP-пакет поступает на маршрутизатор для пересылки, он инкапсулируется во фрейм канального уровня - обычно фрейм Ethernet. Что касается Ethernet, интерфейс маршрутизатора является конечным пунктом назначения для кадра, маршрутизатор принимает и «потребляет» кадр.
После того, как решение о маршрутизации принято и данные IP-пакета готовы к отправке, маршрутизатор повторно инкапсулирует их в новый кадр Ethernet. Этот новый кадр, очевидно, будет иметь другие MAC-адреса источника и назначения, чем раньше.
Вы можете представить весь процесс как конверт IP, передаваемый от маршрутизатора к маршрутизатору в более крупном конверте Ethernet. Конверт Ethernet разрывается каждым маршрутизатором, маршрутизатор считывает адрес назначения на конверте IP, чтобы принять решение о маршрутизации (т. Е. Определить следующий маршрутизатор, которому будет ретранслироваться конверт), и повторно упаковывает конверт IP в новый конверт Ethernet перед передавая это:
(ссылка на http://www.chipkin.com/newsletter/october-2009-newsletter/)