<
  • Главная
Статьи

Мережевий інтерфейс

  1. Матеріал з Xgu.ru Мережевий інтерфейс - фізична або віртуальне пристрій, призначений для передачі...
  2. [ правити ] Найменування мережевих інтерфейсів в Linux
  3. [ правити ] Параметри інтерфейсу
  4. [ правити ] Програма ifconfig
  5. [ правити ] Аргументи командного рядка ifconfig
  6. [ правити ] Приклад використання ifconfig
  7. [ правити ] Створення мережевого інтерфейсу
  8. [ правити ] Налаштування інтерфейсів при завантаженні системи
  9. [ правити ] Файл конфігурації eth0
  10. [ правити ] Питання та відповіді

Матеріал з Xgu.ru


Мережевий інтерфейс - фізична або віртуальне пристрій, призначений для передачі даних між програмами через комп'ютерну мережу.

Приклади мережевих інтерфейсів:

  • Фізичні інтерфейси мережевих карт і телекомунікаційних пристроїв (комутаторів, маршрутизаторів і так далі)
  • Петльові інтерфейси для обміну даними між процесами на одному комп'ютері або керованому мережному пристрої. Для них виділена спеціальна підмережа 127.0.0.0/8
  • Тунелі - для інкапсуляції протоколу того ж або нижчого рівня в інший протокол
  • Інтерфейси віртуальних мереж (VLAN)

Кожен інтерфейс в мережі може бути однозначно ідентифікований на його адресу. Різні мережеві протоколи використовують різні системи адресації, наприклад MAC-адреси в Ethernet або IP-адреси в IP.

Налаштування мережевих інтерфейсів в UNIX / Linux-системах зазвичай виконується за допомогою команди ifconfig, а в Linux ще й за допомогою команди ip.

[ правити ] Мережевий інтерфейс в Linux

Мережеве взаємодія Linux-комп'ютера відбувається через мережеві інтерфейси. Будь-які дані, які комп'ютер відправляє в мережу або отримує з мережі проходять через мережевий інтерфейс.

Інтерфейс визначений реалізацією моделі TCP / IP для того щоб приховати відмінності в мережевому забезпеченні і звести мережеве взаємодія до обміну даними з абстрактної сутністю.

Для кожного пристрою, підтримуваного ядром, існує мережевий інтерфейс. Існує угода про найменування інтерфейсів, відповідно до якого ім'я інтерфейсу складається з префікса, що характеризує його тип, і числа, що відповідає номеру інтерфейсу даного типу в системі. Так, наприклад, ppp0 відповідає першому інтерфейсу PPP, а eth1 відповідає інтерфейсу другого мережевого адаптера Ethernet. Зверніть увагу на те, що нумерація інтерфейсів починається з 0.

[ правити ] Найменування мережевих інтерфейсів в Linux

[   правити   ] Найменування мережевих інтерфейсів в Linux

Починаючи з середини 2011 року (Fedora 15) в Linux використовується нова схема найменування інтерфейсів. Інтерфейси називаються em [тисячі двісті тридцять чотири] (для інтегрованих) або pci <slot> # <port> _ <vf> (для навісних). Детальніше: [1] , [2] , [3] .

lo Інтерфейс петлі зворотного зв'язку. eth Мережевий інтерфейс до карти Ethernet або картками WaveLan (Radio Ethernet). tr Мережевий інтерфейс до карти Token Ring. ppp Мережевий інтерфейс до каналу PPP (Point-to-Point Protocol). sl Мережевий інтерфейс до каналу SLIP (Serial Line IP). plip Мережевий інтерфейс до каналу PLIP (Parallel Line IP). Використовується для організації мережевої взаємодії з використанням паралельного порту. ax Мережевий інтерфейс до пристроїв для прийому радіопередач AX.25. fddi Мережевий інтерфейс до карти FDDI arc0e, arc0s Мережевий інтерфейс до карти ArcNet. Використовується інкапсуляція пакетів в форматі Ethernet або RFC тисячу п'ятьдесят-одна . wlan Мережевий інтерфейс wi-fi адаптерів

Інтерфейси створюються автоматично для кожного виявленого мережного пристрою при завантаженні ядра ОС.

Кожен інтерфейс характеризується певними параметрами, необхідними для забезпечення його нормального функціонування, і зокрема для мережевого обміну даними по протоколу IP.

[ правити ] Параметри інтерфейсу

IP-адреса IP-адреса, який відповідає цьому мережевому інтерфейсу. Пакети, відправлені за цією адресою, надійдуть до відповідного інтерфейс Маска підмережі Бітова маска, необхідна для обчислення маршруту передачі IP-пакета Широкомовний адреса Адреса при широкомовної розсилки пакетів через інтерфейс. Метрика Умовна характеристика інтерфейсу відповідає рівню витрат при передачі інформації через нього. Використовується при маршрутизації пакетів, для вибору оптимального маршруту. MTU Maximum Transfer Unit. Максимальний розмір блоку даних оброблюваного інтерфейсом. Найбільше значення MTU визначається типом інтерфейсу (наприклад, для Ethernet MTU = 1500), але може бути штучно знижено. MAC-адресу Апаратна адреса мережевого пристрою, відповідного інтерфейсу (для яких це має сенс).

Крім цих параметрів інтерфейс характеризується ще:

  • Прапорами, які визначають стану пристрою, наприклад такі як: чи включений інтерфейс (Up / Down), чи знаходиться він в нерозбірливому режимі (promiscuous / nonpromiscuous)
  • Апаратними характеристиками, такими як адреса пам'яті, номер IRQ, DMA, порт введення / виводу;
  • Статистичною інформацією, що характеризує різні аспекти роботи інтерфейсу. Наприклад, кількість переданих / отриманих байтів / пакетів, число переповнень, колізій і ін. З моменту створення інтерфейсу.

Debian. Довготривалі настройки зберігаються в файлі / etc / network / interfaces.

[ правити ] Програма ifconfig

Для управління інтерфейсами в ОС Linux використовується програма ifconfig. Команда дозволяє як отримувати діагностичну інформацію про інтерфейси системи, так і виконувати їх налаштування.

Формат виклику команди:

ifconfig ifconfiginterfaceoptions

options

Для отримання інформації, програма ifconfig може викликатися простим користувачем. Файл ifconfig знаходиться в каталозі / sbin, тому, найчастіше, при виклику потрібно вказувати абсолютне колійне ім'я.

При виклику без параметрів, програма виводить на екран інформацію про всі активні (up) інтерфейси. Якщо вказано ім'я інтерфейсу, але відсутні options, виводиться інформація тільки про нього одного.

$ Ifconfig eth0 eth0 Link encap: Ethernet HWaddr 00: 01: 02: B4: 61: 10 inet addr: 10.0.0.188 Bcast: 10.255.255.255 Mask: 255.0.0.0 UP BROADCAST RUNNING MULTICAST MTU 1500 Metric: 1 RX packets: 1347443 errors: 0 dropped: 0 overruns: 0 frame: 0 TX packets: 865328 errors: 0 dropped: 0 overruns: 0 carrier: 0 collisions: 0 txqueuelen: 100 RX bytes: 830641609 (792.1 Mb) TX bytes: 72315353 (68.9 Mb) Interrupt: 10 Base address: 0xcc00

Формат виведення інформації про інтерфейсі програмою ifconfig:

Характеристики канального рівня Канальний рівень Link encap. Апаратний MAC-адресу пристрою HWaddr Технічні характеристики мережного рівня IP-адреса інтерфейсу inet addr; широкомовна адреса інтерфейсу Bcast; маска підмережі інтерфейсу Mask Прапори, метрика і MTU Список встановлених прапорів інтерфейсу: включений UP; приймає широкомовні пакети BROADCAST; приймає групові пакети MULTICAST. Серед списку встановлених прапорів може бути присутнім слово PROMISC, що означає, що інтерфейс працює в нерозбірливому режимі. Встановлений розмір максимального блоку, переданого через інтерфейс MTU і метрика інтерфейсу Metric. Інформація про отримані пакетах RX Число пакетів packets, помилок errors, відкинутих пакетів dropped, переповнень overruns. Таке призначення полів відповідає тільки мереж Ethernet. В інших мережах, сенс може відрізнятися. Інформація про надіслані пакетах Число пакетів packets, помилок errors, відкинутих пакетів dropped, переповнень overruns, втрат несучої carrier, колізій collisions; обсяг буфера передачі txqueuelen. Таке призначення полів відповідає тільки мереж Ethernet. В інших мережах, сенс може відрізнятися. Обсяг переданих даних Кількість байтів отриманих RX bytes і відправлених TX bytes через інтерфейс Апаратні параметри Номер лінії IRQ Interrupt і адреса пам'яті Base address

Якщо в командному рядку ifconfig вказані options, виконується настройка інтерфейсу. В процесі настройки можна змінити режим роботи інтерфейсу, налаштування IP-адреси та інші характеристики.

Перед списком опцій в командному рядку ifconfig слід обов'язково вказати ім'я інтерфейсу, до якого вони застосовуються. У команді може бути вказано ім'я, але лише одного інтерфейсу.

Задаються в командному рядку options виглядають як набір ключових слів з додатковими параметрами. Послідовність ключових слів в рядку не має значення, хоча і існує загальноприйнятий порядок.

[ правити ] Аргументи командного рядка ifconfig

interface

Ім'я інтерфейсу, до якого застосовується дія програми ifconfig. up | down Включає / вимикає інтерфейс. address IP-адреса, який призначається інтерфейсу. netmask address Встановлює значення мережевої маски для інтерфейсу рівному значенням address. [-] broadcast [address] Встановлює значення широкомовної адреси рівному значенням address. Якщо додатковий аргумент address відсутня, включає або вимикає роботу інтерфейсу в широкомовному режимі. [-] promisc Включає / вимикає нерозбірливий режим роботи інтерфейсу. [-] arp Дозволяє / забороняє використання протоколу ARP по цьому інтерфейсу. metric N Встановлює метрику інтерфейсу рівній N. mtu N Встановлює значення MTU інтерфейсу рівним N irq N Встановити IRQ пристрою рівним N (якщо дозволяє драйвер пристрою) io_addr address Встановити адресу введення-виведення, рівним параметру address (якщо дозволяє драйвер пристрою) media type Задати тип фізичного середовища передачі даних (якщо дозволяє драйвер пристрою)

При зміні IP-адреси інтерфейсу автоматично змінюються значення його маски і широкомовної адреси. Якщо параметри netmask і broadcast не вказані явно, відповідні значення обчислюються виходячи з класу IP-адреси. Наприклад, для IP-адреси 200.200.200.200, який відноситься до діапазону адрес класу C, значення мережевої маски і широкомовної адреси будуть відповідно рівні 255.255.255.0 і 200.200.200.255, а для адреси 1.2.3.4 (адреса класу A), рівні відповідно 255.0 .0.0 і 1.255.255.255.

Більш тонке налаштування інтерфейсу можна зробити за допомогою утиліти ip

[ правити ] Приклад використання ifconfig

Перегляд інформації про всі інтерфейси

$ ifconfig

Перегляд інформації про інтерфейс eth0:

$ Ifconfig eth0

Призначити IP-адреса 10.0.0.1 першої Ethernet-карті:

# Ifconfig eth0 10.0.0.1

Інтерфейс не включається автоматично. Якщо необхідно включити інтерфейс, в командному рядку слід явно вказати параметр up:

# Ifconfig eth0 10.0.0.1 up

Значення широкомовної адреси та мережевої маски будуть визначені автоматично на основі інформації про клас адреси. Якщо необхідно явно задати маску, наприклад, обмежити розмір мережі 14 хостами (4 біта на хост), потрібно використовувати команду:

# Ifconfig eth0 10.0.0.1 netmask 255.255.255.240 broadcast 10.0.0.15

Заборонити використання ARP на інтерфейсі eth0:

# Ifconfig eth0 -arp

Перекласти інтерфейс в нерозбірливий режим:

# Ifconfig eth0 promisc

[ правити ] Створення мережевого інтерфейсу

Інтерфейс створюється ядром автоматично при виявленні пристрою. Для того щоб пристрій було доступно, необхідно включити його драйверного підтримку до складу ядра. Це може бути зроблено в момент складання ядра або при роботі системи з використанням механізму завантажувальних модулів.

Якщо пристроїв, що забезпечують однаковий тип інтерфейсу, кілька, їх автоматичне визначення не проводиться.

При використанні декількох пристроїв одного типу потрібно зробити їх ручну настройку, тобто явно призначити інтерфейс кожному з них. Це необхідно, оскільки при автоматичному визначенні пристроїв порядок прив'язки до інтерфейсів непередбачуваний, що неприпустимо.

Це необхідно, оскільки при автоматичному визначенні пристроїв порядок прив'язки до інтерфейсів непередбачуваний, що неприпустимо

Не плутайте інтерфейси і пристрої системи. Інтерфейсів не відповідають ніякі спеціальні файли в каталозі / dev

Новостворений інтерфейс є ненастроєного: він вимкнений і до нього не прив'язаний ніякої IP-адреса. Для того щоб ввести інтерфейс в роботу, потрібно провести його налаштування і включити (підняти) його за допомогою команди ifconfig.

Під час налаштування інтерфейсу зазвичай налаштовуються наступні параметри:

  • IP-адреса має бути вказаний обов'язково, оскільки без нього використання інтерфейсу нездійсненно;
  • Мережева маска повинна вказуватися в тому випадку, якщо вона відрізняється від тієї, яка відповідає класу IP-адреси;
  • Широкомовна адреса вказується в тому випадку, якщо він відрізняється від широкомовної адреси, що обчислюється на основі значень IP-адреси і мережевий маски.

Ці параметри задаються однією командою, яка при цьому, як правило, відразу і включає інтерфейс.

# Ifconfig eth0 192.168.1.1 up # ifconfig eth1 10.0.0.1 netmask 255.255.255.0 up

[ правити ] Налаштування інтерфейсів при завантаженні системи

Налаштування інтерфейсу, виконані за допомогою ifconfig, автоматично пропадають при виключенні комп'ютера. Після того як ядро ​​Linux завантажено знову, всю настройку потрібно виконувати знову. Зазвичай вона проводиться автоматично спеціальними скриптами при завантаженні комп'ютера.

Розглянута нижче процедура автоматичної настройки мережевих інтерфейсів при завантаженні виглядає так тільки в RedHat-based системах. В Slackware і Debian мережеві інтерфейси налаштовуються трохи інакше.

Налаштування інтерфейсів виробляється скриптом /etc/rc.d/init.d/network, який автоматично викликається при переході на 2, 3, 4 або 5 рівень виконання. Скрипт network при виклику з параметром start піднімає інтерфейси, тобто виконує настройку і включення всіх описаних інтерфейсів, після чого налаштовує статичну маршрутизацію.

Файли інтерфейсів можуть бути створені вручну або за допомогою псевдографічні і графічних інструментів настройки, таких як netconfig або neat

Опис інтерфейсів знаходиться в файлах ifcfg- * в каталозі / etc / sysconfig / network-scripts. У назві файлу, за символом - слід ім'я інтерфейсу, наприклад файл ifcfg-eth0 містить настройки інтерфейсу eth0. Файл опису інтерфейсів - це невеликий скрипт, який містить лише кілька команд присвоєння variable = value де variable - певний параметр настройки інтерфейсу, а value - необхідне значення цього параметра.

Параметри інтерфейсу в файлі ifcfg.

DEVICE Ім'я пристрою ONBOOT Чи потрібно форматувати інтерфейс при завантаженні (yes | no) BOOTPROT При динамічної налаштування тип протоколу, за допомогою якого повинен бути налаштований інтерфейс (bootp | dhcp) BOOTP Інтерфейс необхідно налаштувати з використанням протоколу віддаленого завантаження BOOTP IPADDR IP-адреса, який повинен бути привласнений інтерфейсу NETMASK Маска підмережі IP-адреси інтерфейсу NETWORK Адреса мережі інтерфейсу BROADCAST Широкомовний адреса інтерфейсу


Значення NETMASK, NETWORK, BROADCAST можуть бути обчислені скриптом ifup автоматично за допомогою програми ipcalc, тому, якщо вони відповідають класу IP-адреси, вказувати явно їх не обов'язково

Для настройки інтерфейсів під час завантаження комп'ютера використовується скрипт ifup, який приймає в якості аргументу командного рядка ім'я інтерфейсу interface.

ifup interface

Він читає конфігураційний файл interface або, якщо він відсутній, файл з каталогу / etc / sysconfig / networking / default. В крайньому випадку, якщо не знайдений жоден з цих файлів читається конфігурація з ifcfg- interface. Після цього скрипт робить налаштування інтерфейсів за допомогою утиліти ip. Налаштовуються не тільки інтерфейси самі по собі, а й необхідні маршрути для звернення до мереж, безпосередньо доступним через інтерфейс.

Скрипти ifup і ifdown можуть викликатися не тільки під час завантаження комп'ютера або при зміні рівня виконання, але і в ході нормальної роботи, коли потрібно вручну підняти або опустити інтерфейс.

Перезапуск інтерфейсу eth0:

# Ifdown eth0 # ifup eth0

Файли ifup і ifdown в каталозі / etc / sysconfig / network-scripts є символічними посиланнями на файли ifup і ifdown в каталозі / sbin. Тому, при виклику вручну можна просто скористатися командами ifup і ifdown.

Коли Ви телефонуєте в ході початкового завантаження, скрипту ifup передається додатковий аргумент boot, який повідомляє, що інтерфейс потрібно піднімати тільки в тому випадку, якщо в файлі його конфігурації параметр ONBOOT не встановлено в no.

[ правити ] Файл конфігурації eth0

Ось приклад найбільш поширеною конфігурації Ethernet-інтерфейсу:

DEVICE = eth0 ONBOOT = yes IPADDR = 10.0.0.188 NETMASK = 255.255.255.0 NETWORK = 10.0.0.0 BROADCAST = 10.0.0.255

В даному випадку файл описує інтерфейс eth0, якому призначений IP-адреса з діапазону рекомендованого для локальних мереж 10.0.0.188. Оскільки адреса належить до класу A, а необхідно щоб під мережеву частину було відведено 24 біта, явно задана мережева маска NETMASK, адреса мережі NETWORK і широкомовна адресу BROADCAST.

  • /etc/init.d/network - Скрипт, що виконує настройку мережевих інтерфейсів і маршрутизації при завантаженні.
  • / Etc / sysconfig / network - Конфігураційний файл, який містить ім'я хоста, IP-адреса основного шлюзу і IP-адреси основного та допоміжного DNS-серверів
  • / Etc / sysconfig / network-scripts - Каталог, що містить конфігураційні файли інтерфейсів і скрипти, які виконують їх ініціалізацію
  • / Etc / sysconfig / network-scripts / ifup - Скрипт, який виконує настройку і активацію інтерфейсу
  • / Etc / sysconfig / network-scripts / ifdown - Скрипт, який виконує деактивацію інтерфейсу
  • / Etc / sysconfig / network-scripts / ifcfg- * - Файли, які описують інтерфейси системи.

[ правити ] Питання та відповіді

[ правити ] Як створити фіктивний мережевий інтерфейс з заданим назвою?

Створити tap-інтерфейс:

за допомогою tunctl:

tunctl -t eth0

За допомогою ip:

ip tuntap add dev eth0 mode tap

Створити dummy-інтерфейс:

modprobe dummy0 ip l set dev dummy0 name eth0

[ правити ] Додаткова інформація



Новости
  • Виртуальный хостинг

    Виртуальный хостинг. Возможности сервера распределяются в равной мере между всеми... 
    Читать полностью

  • Редизайн сайта

    Редизайн сайта – это полное либо частичное обновление дизайна существующего сайта.... 
    Читать полностью

  • Консалтинг, услуги контент-менеджера

    Сопровождение любых интернет ресурсов;- Знание HTML и CSS- Поиск и обновление контента;-... 
    Читать полностью

  • Трафик из соцсетей

    Сравнительно дешевый способ по сравнению с поисковым и контекстным видами раскрутки... 
    Читать полностью

  • Поисковая оптимизация

    Поисковая оптимизация (англ. search engine optimization, SEO) — поднятие позиций сайта в результатах... 
    Читать полностью