Intereting Posts
Выход ловушки функции, но пусть он выйдет MPV: как получить информацию о медиафайлах, воспроизводимых через командную строку? grub-install: ошибка: не удается найти каталог efi Почему люди не любят PulseAudio? ~ / .xinitrc не запускается Удаление специальных символов из файла и сохранение разделителя полей Linux будет загружаться только на ноутбуке, где он был установлен Добавление строки в файл из удаленного ssh Почему мой elif рассматривается как выражение else в моем сценарии bash? Как я могу обнаружить, что никакие опции не были переданы с помощью getopts? Великолепный запуск, когда я нажимаю «Открыть с помощью или показать в папке в XFCE в Arch» для любого файла Просмотр заметок для определенного пакета в ArchLinux без удаления пакета? Как удалить из файла конфигурации переменную, которая не равна 100 Условный блок с условным выражением (если) Как переключиться с неизвестной оболочки на bash?

Пожалуйста, помогите мне разобраться в этих адресах tun0

Я уже сделал некоторые поиски и более или менее понял, что tun0 интерфейс tun0 . Я получил из разных источников следующее:

Пакеты, отправленные операционной системой через устройство tun / tap, доставляются в программу пользовательского пространства, которая присоединяется к устройству. Программа пространства пользователя также может передавать пакеты в устройство туннелирования. В этом случае устройство tun / tap доставляет (или «внедряет») эти пакеты в сетевой стек операционной системы, тем самым эмулируя их прием от внешнего источника. Интерфейсы tun / tap – это программные интерфейсы, что означает, что они существуют только в ядре и, в отличие от обычных сетевых интерфейсов, у них нет физического аппаратного компонента (и поэтому к ним не подключен физический провод).

Вы можете придумать интерфейс tun / tap как обычный сетевой интерфейс, который, когда ядро ​​решает, что наступил момент отправить данные «на провод», вместо этого отправляет данные в некоторую программу пользовательского пространства, которая привязана к интерфейсу.

Теперь, если я сравниваю выходы для eth0 и tun0 , я вижу что-то вроде этого.


 ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:14:22:50:78:71 inet addr:172.16.210.32 Bcast:172.16.255.255 Mask:255.255.0.0 ... UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 <snipped> 

 ifconfig tun0 tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.8.0.1 PtP:10.8.0.2 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 

Теперь, если мы попытаемся сравнить эти два, мы найдем эти различия,

  1. eth0 имеет MAC-адрес, и, понятно, tun0 не делает этого.

  2. eth0 работает в широковещательном режиме, а tun0 работает в режиме «точка-точка».

У меня есть следующие моменты, которые я не понимаю.

  1. Какова роль адреса PtP:10.8.0.2 в этом сценарии?

  2. Почему маска подсети tun0 установлена ​​на 255.255.255.255?

Соединения аппаратной сети могут быть либо от точки к точке, либо от точки к многоточечной связи. ppp-ссылки – точка-точка, ethernet – точка для многоточечной связи. tun может действовать так же, как и в вашем случае, он действует как точка-точка. интерфейс точки к многоточечному соединению имеет четыре связанных с ним адреса, в частности IP-адрес (адрес интерфейса), сетевой адрес, широковещательный адрес и маску сети. Ссылка точки к точке имеет два связанных с ней адресов, в частности, адрес ip (ближний адрес) и адрес одноранговой точки (дальний адрес). Так как связь точка-точка будет работать только с двумя адресами, широковещательные и сетевые адреса и сетевая маска не имеют полезных данных или имеют значения флагов.

Конечные туннельные интерфейсы могут иметь адреса mac, у них просто нет MAC-адресов по умолчанию.