Назад | Перейти на главную страницу

MAC-адрес меняется для каждой новой сети?

Я читал книгу, в которой говорилось, что 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:

  1. физический уровень (кабели, адаптеры, ...)
  2. уровень канала передачи данных (Ethernet)
  3. сетевой уровень (IP)
  4. транспортный уровень (TCP, UDP)
  5. уровень сеанса
  6. уровень представления
  7. прикладной уровень

Для каждого уровня существует протокол, который определяет связь между локальным и удаленным компонентами на одном уровне, и каждый компонент определяет / реализует интерфейсы только со своими соседними компонентами (выше и ниже).

Общение в 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/)