• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Как устроена сеть, как ходят пакеты, уровни, адаптеры....

Мопс

Ученик
Регистрация
14 Июн 2019
Сообщения
6
Реакции
0
Баллы
0
Как устроена сеть, как ходят пакеты, уровни, адаптеры....

Здравствуйте.


Подскажите есть PC (с хард Ethernet адаптером), на нем стоит VirtualBox и есть локальная сеть. Обе эти машины доступны в этой локалке. У каждой свой IP и о Боже у каждой свой МАС. Но хард адаптер же один, откуда второй МАС? МАС же дается харду ?
 
...есть локальная сеть. Обе эти машины доступны в этой локалке. У каждой свой IP и о Боже у каждой свой МАС. Но хард адаптер же один, откуда второй МАС? МАС же дается харду ?
Для тех, кого забанили в Википедии:
MAC-адрес (от англ. Media Access Control — управление доступом к среде, также Hardware Address, также физический адрес) — уникальный идентификатор, присваиваемый каждой единице активного оборудования или некоторым их интерфейсам в компьютерных сетях Ethernet.
 
Николай С
что каждая сетевая карта (равно как и встроенный сетевой интерфейс) должна иметь уникальный шестибайтный номер (MAC-адрес), «прошитый» в ней при изготовлении
Как же прошивается карта VirtualBoxa ?
 
Так же, как все остальные.
Что такое "прошивка"? Это жёстко закрепляемый ответ на определённый запрос.
Для многих роутеров МАС-адрес прописывается программно и при настройке сети может подменяться. В виртуальной машине стоит программный роутер в режиме, чаще всего, моста, и в нём прописывается или генерируется автоматически нужный адрес.
 
Отлично.
Т.е. VirtualBox создает виртуальную сетевую карту и прошивает ее виртуальным МАС адресом. Т.е. создает свое виртуальное оборудование канального уровня. Отлично. А у РС карта это свой канальный уровень так же ? В теории сказано АRP разрешает сетевой адрес в канальный адрес и таким образом осуществляется однозначная доставка сообщения.
В итоге через адаптер канального уровня РС ходят пакеты и виртуального канального уровня и пакеты хардового канального уровня. Как же они разруливаются? Эт получается что карта Еthernet эт что то другое а не адаптер канального уровня. Эт что просто электрический адаптер ?
 
Эт что просто электрический адаптер ?
По сути - да.

ее задача принять байтики. Далее отрабатывает драйвер сетевой карты. Установив Virtualbox появляется виртуальный свитч в который приходят виртуальные адаптеры и "реальные". Далее все, как по теории, каждая виртуалка создает свой eth кадр который имеет src mac. По нему, выше упомянутый виртуальный свитч, запоминает, что откуда пришло и создает свою CAM таблицу. Так же VB(и другие системы виртуализации) умеет создавать наложенные виртуальные сети, изолированные сети, сети за NAT, тупо бриджевать в виртуальный свитч. Точно не подскажу, как это именно реализовано.
 
Привет всем.
Народ, если знаете дайте толковых ссылок, покурить эту тему
 
На какую именно тему курить? Тут затронуты как минимум 3. Сети, виртуализация, программирование.
 
Ну вот есть книга Олиферов, но она не сильно мне помогла решить мой вопрос. Там ничего нет, насчет карточки "которая только байты принимает" Я например считал, что карта это канальный уровень. Было хобби хотел микроконтроллер подключить в сеть, но не так чтобы заработало и бросил, хотелось разобраться. Есть такой чип ENC28J60
и там в доке где то было сказано что он решает канальный уровень, начал копать и вот здесь узнаю что более мощная версия (сетевая карта РС) не решает задачи канального уровня. Короче хочу разобраться кто есть кто, а инет как известно сорная яма где есть все и найти можно только если знаешь что искать....
 
принимает байты это физический уровень, канальный - уже разбор из единичек и нулей в адреса и данные. канальный уровень управляется из сетевого уровня. Тут чистое программирование, драйвера и прочее.

Ну и вообще не понятно причем тут чипы eth контроллеров и virtualbox. Книга, упомянутая вами не для разработчиков, а вас интересует именно разработка. Тут я думаю стоит обратиться к rfc по тематике ieee802.3.

Вот кусочек из википедии:
"В программировании доступ к этому уровню предоставляет драйвер сетевой платы. В операционных системах имеется программный интерфейс взаимодействия канального и сетевого уровней между собой, это не новый уровень, а просто реализация модели для конкретной ОС. Примеры таких интерфейсов: ODI, NDIS."

так-что по сути вся магия в операционной системе кроется в драйверах.
 
Ну и вообще не понятно причем тут чипы eth контроллеров и virtualbox. Книга, упомянутая вами не для разработчиков, а вас интересует именно разработка. Тут я думаю стоит обратиться к rfc по тематике ieee802.3.
контроллер тут при том, что я сказал хотел бы сделать, но многое не понятно, прочитал Олиферов, многое узнал, но все равно не понятны многие вещи. А тут просто задумался как рулятся пакеты с виртуальной машины....
Вот беда не знаю как читать rfc для сетей (какие, в какой последовательности...)
 
Назад
Сверху