Меню Рубрики

Узнать mac адрес сетевой карты linux

Как узнать mac адрес в Linux

Иногда бывает необходимо узнать mac адрес сетевой карты. В этом нет ничего сложного! Даже если вы используете Linux.

Для того, чтобы узнать mac адрес в Linux, вам необходимо выполнить несколько простых действий:

Первый способ:

  1. Откройте Терминал.
  2. В командной строке выполните следующую команду (если вы работаете под учетной записью root, слово sudo набирать не надо и вам следует также пропустить действия пункта 2):
  3. Введите пароль суперпользователя.

4. На экране появится информация о доступных интерфейсах. Mac адрес находится после слова HWaddr.

В моем примере я отметил mac адрес сетевого интерфейса eth0:

Второй способ (добавлено stalker209):

В Терминале выполнить команду: sudo dmesg | grep eth0

Как видим, узнать mac адрес в Linux очень просто!

Источник

Как узнать MAC-адрес в Linux

В те времена, когда только проектировался Ethernet, предусматривалось применение уникального номера каждой сетевой карте, подключённой к нему. Назначался он при изготовлении платы. MAC-адрес используется для определения получателя и отправителя информации в Сети. И в этой статье речь пойдёт о том, как узнать MAC адрес в Linux.

Практически во всех операционных системах на основе ядра Linux используется две консольные утилиты, с помощью которых можно узнать аппаратный адрес карты: ifconfig и ip. Различные графические приложения этого типа используют их данные.

Как узнать MAC-адрес с помощью ifconfig

Одной из первых сетевых программ в истории Linux является ifconfig. В некоторых дистрибутивах она запускается только от имени администратора, а где-то вообще не установлена. Рассмотрим её инсталляцию и использование в Manjaro Linux.

Пакет, содержащий в себе некоторые сетевые утилиты (в том числе и ifconfig), в Manjaro- и Arch-подобных системах называется net-tools. Установим его.

sudo pacman -S net-tools

А в Ubuntu- и Debian-подобных системах:

sudo apt install net-tools

Чтобы узнать MAC-адрес Linux, сначала смотрим список интерфейсов:

Доступных интерфейсов два: enp0s7 (в вашем случае он может называться по другому) и lo (он же локальный хост, который одинаков практически для всех компьютеров). Нам нужен enp0s7.

MAC-адрес устройства виден уже сейчас в поле ether, но чтобы отобразить только его, воспользуемся такой командой:

ifconfig -a | grep ether | gawk ‘

Здесь grep принимает на вход то, что вывела команда ifconfig -a, находит строку, где есть ether, и передаёт на вход команде gawk, которая выбирает второе слово в принятой строке.

Как посмотреть MAC-адрес с помощью ip

Более новой в системах GNU/Linux (относительно ifconfig) является программа ip. Её принцип работы практически такой же. Отличается синтаксисом и выводимой информацией. И она установлена по умолчанию для всех систем. Для отображения сетевых интерфейсов нужно ввести команду:

Здесь lo и enp0s7 расположены в обратном порядке.

Чтобы узнать MAC адрес сетевой карты Linux, вводим ту же самую конструкцию, только для этой команды:

ip a | grep ether | gawk ‘

Выводы

За то, как узнать MAC адрес в Linux, отвечают две консольные утилиты — ifconfig и ip. Первая может запускаться от имени администратора в некоторых дистрибутивах (например в Debian), а где-то вообще не быть установленной (Manjaro). Это связано с её отходом на второй план, поскольку ip является более новой программой и устанавливается по умолчанию во всех системах.

Источник

Записки дебианщика

В этом блоге публикуются заметки и решения, найденные в процессе работы, освоения и жизни в дистрибутиве Debian GNU/Linux.

Как узнать MAC адрес сетевой карты: смена МАК адреса в Linux

Иногда может потребоваться узнать или изменить MAC адрес сетевой карты в Linux, например, если он используется для авторизации доступа в интернет. Изменить MAC-адрес очень просто, для этого существуют специальные системные файлы, которые нужно немного подправить. Это довольно простая, хотя по первому разу не очевидная, процедура.

Временная смена MAC-адреса в Linux
Для этого набираем

при этом MAC-адрес изменится и будет оставаться таковым до перезагрузки. Если нужно сделать так, чтобы MAC-адрес был таким всегда, нужно приударить в соответствующий бубен системный конфиг.

Постоянный изменённый MAC-адрес в Linux
Для этого идём в /etc/network/if-pre-up.d/ и создаём там от рута файл, например имени pre-up.

В этот файл пишем следующее:

При этом в первый раз (особенно при работающем интерфейсе) может вылезти такое:

# /etc/init.d/networking restart
Setting up IP spoofing protection: rp_filter.
Reconfiguring network interfaces. SIOCDELRT: No such process
ifup: interface lo already configured
SIOCSIFHWADDR: Device or resource busy
run-parts: /etc/network/if-pre-up.d/pre-up exited with return code 1
done.

notebeast:/home/beast# /etc/init.d/networking restart
Setting up IP spoofing protection: rp_filter.
Reconfiguring network interfaces. ifup: interface lo already configured
done.

Всё, MAC изменён и останется таковым и после перезагрузки.

Сменить MAC-адрес в Линукс можно разными способами — на то он и Линукс. Например, можно заменить содержимое /etc/network/interfaces на следующее:

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
hwaddress ether 00:00:00:00:00:00

Другие способы описаны в комментариях к этому посту ниже.

Узнать MAC-адрес сетевой карты в Linux Чтобы узнать текущий MAC-адрес просто: набираем

eth0 Link encap:Ethernet HWaddr 00:0A:E4:53:AA:2D
inet addr:10.26.49.77 Bcast:10.26.63.255 Mask:255.255.240.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:208554 errors:0 dropped:0 overruns:0 frame:0
TX packets:125071 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:40664531 (38.7 MiB) TX bytes:45919980 (43.7 MiB)
Interrupt:21 Base address:0x4c00

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:18511 errors:0 dropped:0 overruns:0 frame:0
TX packets:18511 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:537155 (524.5 KiB) TX bytes:537155 (524.5 KiB)

36 комментариев: |высказаться!| RSS-лента дискуссии.|

Сегодня наконец-то решил опубликовать пост, который уже успел покрытся слоем пыли, по этой же теме, но только при помощи пакетика macchanger 🙂

2 dim4ik
Сегодня наконец-то решил опубликовать пост, который уже успел покрытся слоем пыли
Аналогичная ситуация: надо бы пост уже наконец выложить, чтобы не потереть случайно и самому потом не забыть 🙂

Наиболее мне понравилось как подобное реализовано в Gentoo. Вот кусок содержимаго файла /etc/conf.d/net

mac_eth0=»00:50:8D:63:41:DE»
config_eth0=( «192.168.100.37 netmask 255.255.252.0» )
routes_eth0=(
«default via 192.168.100.1»
)

Все понятно и чисто, за это я и люблю Gentoo 🙂

Если MAC-адрес используется для авторизации доступа — это повод сменить провайдера, а не MAC-адрес. Без шуток.

2 ulmen
Наиболее мне понравилось как подобное реализовано в Gentoo.
Ну так! Потому гента, как известно, и рулит :-))

Все понятно и чисто, за это я и люблю Gentoo 🙂
У нас тоже не особенно мутно, но со своими особенностями. Но если у нас в Москве похолодает ещё круче — буду ставить генту и оптимизировать всё до полного посинения 🙂

2 jankkhvej
Если MAC-адрес используется для авторизации доступа — это повод сменить провайдера
Зачем так категорично? Если честно, я не очень в курсе этой кухни, но МАК там используется в пределах небольшого сегмента и, вместе с IP-адресом, они определяют пользователя. Никаких накладок и проблем в Центеле по этому поводу не было никогда — всё работает (в отличие от любителей виндовых VPN) на ура.

Анонимно комментирует. 25 февр. 2007 г., 18:58:00

А зачем выносить скрипт? У меня запись сразу в interfaces :
pre-up ifconfig eth0 hw ether 00:00:00:00:00:00

Вариантов много. Это ж Линукс 🙂
Если читать man interfaces, то результат будет следующий:
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
hwaddress ether xxxxxxxxxxxx

Анонимно комментирует. 26 февр. 2007 г., 05:49:00

У меня hwaddress ether xxxxxxxxxxxx не работает по неизвестным причинам. Но я не удивлен, у меня долго не работал replacedefaultroute, пока не исправили 🙂

У меня в interfaces:
auto eth1
iface eth1 inet dhcp
hwaddress ether 00:00:00:00:00:00

И все работает. Удивительно, как многим нужна смена адреса. 🙂

Мне она понадобилась из-за смены компьютера, чтобы не звонить провайдеру, а то их как попросишь о чем-нибудь, так они все ломают и связь минимум на сутки пропадет.

2 jmv
Удивительно, как многим нужна смена адреса. 🙂
Да, и естественно, что в Линуксе вариантов куча. Большое спасибо комментаторам за то, что избавили от необходимости читать man ifconfig :-))

Мне она понадобилась из-за смены компьютера, чтобы не звонить провайдеру
Та же песня: настраивали интернет на старом ноутбуке, купил новый — в суппорт не прозвониться. Решил на местном форуме спросить — немного помаялся и теперь всё отлично. Чтобы не забыть / не потерять МАК-адрес, решил его сюда забросить. И потом, мало ли кому пригодится.

Верьте мне, я провайдер 😉
Привязка к MAC-адресу имено так легко обходится, а это уже означает, что защита не работает. Неудобств от привязки MAC-адреса для провайдера больше, а выгоды нет никакой.
Если IP и MAC используются для идентификации пользователя — это опять таки легко обходится. Если свитч с определённого порта пропускает определённый MAC и/или IP — это достаточно дорогой свитч. И его ж каждый раз надо конфигурировать, как только меняется что-то. Можно использовать много наворотов, но в итоге это неоправданно. Проще использовать 802.1x или PPPoE, технологии специально для этого сделанные.

Заранее хочу сказать что я в линухе безгоду неделю.
Пытаюсь познать Debian Etch.
но что касается смены Мака, отключается у меня интерфейс после данных изменений:

iface lo inet loopback
address 127.0.0.1
netmask 255.0.0.0

iface eth0 inet static
address *.*.*.*
netmask 255.255.0.0
gateway *.*.*.*
hwaddress enter 00:00:00:00:00:00

нет в жизни счастья:\
. продолжаю копать,может чего поскажите?;)

А Блог просто супер, надо же нам ЛинухЛамерам на чём-то учиться 🙂
. продолжайте в том же духе!
Побольше статей, хороших и разныХ!:)

2 Senpai
Пытаюсь познать Debian Etch.
И это правильно. Настоящие джедаи никогда не ищут лёгких путей типа убунты 🙂

но что касается смены Мака, отключается у меня интерфейс после данных изменений:
И правильно делает: в конфиге ошибка.

hwaddress enter 00:00:00:00:00:00

нет в жизни счастья:\
Есть, только не сразу. Держаться и не поддаваться соблазну перебежать куда-нибудь ещё.

. продолжаю копать,может чего поскажите?;)
Собственно, выше. Можно смело писать на почту — я её просматриваю и даже отвечаю 🙂

. продолжайте в том же духе!
Спасибо за тёплые слова. Будем продолжать.

Анонимно комментирует. 22 апр. 2007 г., 18:01:00

>>Верьте мне, я провайдер 😉
Привязка к MAC-адресу имено так легко обходится, а это уже означает, что защита не работает. Неудобств от привязки MAC-адреса для провайдера больше, а выгоды нет никакой.

—reply
Именно для провайдера нет никаких неудобств — исключительно выгоды, одной из которых является «лекго обходится». Регистрация нового MAC пользователя проводится в 2 счёта, «нелегалы» отсеиваются как мухи от котлет — отдельно, безопасность и контроль пользовательского сегмента заметно повышаются.

>>Если IP и MAC используются для идентификации пользователя — это опять таки легко обходится. Если свитч с определённого порта пропускает определённый MAC и/или IP — это достаточно дорогой свитч. И его ж каждый раз надо конфигурировать, как только меняется что-то. Можно использовать много наворотов, но в итоге это неоправданно. Проще использовать 802.1x или PPPoE, технологии специально для этого сделанные.

—reply
С применением PPPoE метода авторизации пользователя аналогично применимо ограничение по MAC. Ограничивается не на свитче, следовательно их нет необходимости тысячи раз перепрограммировать. Масштабировать такую сеть значительно легче.

Выше спрашивали, — «Зачем писать смену в отдельный pre-up скрипт, а не ограничиться, например, дополнительной строкой в interfaces»
У меня возникла такая ситуация: есть очень капризный пакет network-manager в ubuntu 7.04, который перестает нормально работать с vpn, если хоть чуть-чуть тронешь interfaces.

Анонимно комментирует. 25 февр. 2008 г., 12:14:00

>>Верьте мне, я провайдер 😉
>>Привязка к MAC-адресу имено так легко обходится, а это уже означает, что защита не работает. Неудобств от привязки MAC-адреса для провайдера больше, а выгоды нет никакой.

>>Если IP и MAC используются для идентификации пользователя — это опять таки легко обходится. Если свитч с определённого порта пропускает определённый MAC и/или IP — это достаточно дорогой свитч. И его ж каждый раз надо конфигурировать, как только меняется что-то. Можно использовать много наворотов, но в итоге это неоправданно. Проще использовать 802.1x или PPPoE, технологии специально для этого сделанные.

вот, блин, после такого сообщения могу только сказать об уровне твоей сети — один-два дома.
ты еще добавь, что использование вланов — это очень неудобно в настройке и требует, опять же, дорогого оборудования.

в общем, не неси бред.
по нормальному все происходит так:
управляемые свитчи, два влана (на каждый район) — один для свитчей, второй для пользователей.
каждому пользователю прописывается его мак на порту свитча (и, понятое дело, что только эти пакеты свитч будет пропускать), тем самым гарантируется, что ни кто другой из любого места сети под этим маком в сеть не выйдет. на сервере же под этот мак спокойно привязывается интернет.

при нормальной техподдержке прописывание мака на порт — 5 (ну хорошо, 10) минут.
система же надежна как молоток.

говорю это как работавший в НОРМАЛЬНОЙ провайдерской конторе 2.5 года (и как админ, и как техподдержка).

Анонимно комментирует. 27 авг. 2008 г., 00:18:00

интересно, здесь только с генты и убунты сидят?
У меня вопрос тоже по смене мак адреса. компа 2 а кабель один, приходится перетыкать каждый раз. в техподдержке уже тупо посылают потому как задолбал звонить им по 5 раз в день. Нужно сменить мак но то что тут написано не подходит. у меня Альтлинукс и там в /etc нет папок /network /interfaces или /conf.d
Куда что писать?

Анонимно комментирует. 29 авг. 2008 г., 00:13:00

Ну почему только гента или убунта, я вот на федьке с арчем сижу 🙂 Те же вопросы также решаются. Никаких проблем, только мелкие отличия 🙂

Анонимно комментирует. 30 авг. 2008 г., 17:30:00

У меня hwaddress ether xxxxxxxxxxxx не работает по неизвестным причинам.

причина:
http://bugs.busybox.net/view.php?id=880

Спасибо за статью, как раз появилась необходимость подключения двух разных компов, а в сети идет привязка по маку и постоянно приходиться звонить в суппорт. Теперь проблема решена 🙂

Мне нужно подменить МАС спутникового ресивера.
Сервис меняет МАС в течение 5 минут, в течение 1 часа 3 раза бесплатно, 4 раз снимают 100 рублей. Но возникла потребность подключиться с другого компьютера с другим ресивером.
Присвоение МАС адреса делаю так: вписываю в .etc/rc.local
dvbnet -p 4175

ifconfig dvb0_0 10.251.55.372 netmask 255.255.255.255 broadcast 255.255.255.0 hw ether 00:02:CB:1$

Так вот вопрос, если я этот МАС пропишу для ресивера с Другим МАС адресом, он будет работать?

Анонимно комментирует. 13 нояб. 2008 г., 16:59:00

Просто хочу присоединиться к благодарностям автору за данную статью, спасибо. Все работает (комп и ноут, один кабель). Вот.

Анонимно комментирует. 30 мар. 2009 г., 05:50:00

> А зачем выносить скрипт? У меня запись сразу в /etc/network/interfaces :

/etc/conf.d/net из gentoo =
/etc/network/interfaces in debian

> у меня Альтлинукс и там в /etc нет папок /network /interfaces или /conf.d
> Куда что писать?
спроси девелоперов Альта. Меня честно говоря не очень радует находить подобные отличия.

Анонимно комментирует. 3 мая 2009 г., 16:40:00

Не знаю, правильно ли, но в ALT Linux 4.1 долговременно MAC можно изменить так:
1) Открыть для редактирования (с правами root) файл /etc/rc.d/rc.sysinit (в комментарии в начале файла сказано, что он «run once at boot time»).
2) Вставить в конец файла строки
/sbin/ifconfig eth0 down #Выключаем eth0
/sbin/ifconfig eth0 hw ether 11:22:33:44:55:FF #Нужный Вам MAC
/sbin/ifconfig eth0 up #Включаем eth0

Особенность ALT Linux’a — основные утилиты собраны в /sbin
При этом IP адрес должен настраиваться через NetworkManager (апплет в правой части панели задач), а соединение должно привязываться к интерфейсу по MAC адресу. Сам MAC при настройке можно не указывать.

спасибо за статью. очень помогло!

В ALTLinux’е правильно скрипт ifup-pre положить в каталог /etc/net/ifaces/eth0/
Понято после чтения http://www.altlinux.org/Etcnet :).
А ещё лучше в этом случае содержание скрипта сделать следующим:

#!/bin/sh
eth=$(basename $(pwd))
ifconfig $eth hw ether

* Строку
eth=$(basename $(pwd))
нужно заменить строкой
eth=$(basename $(dirname $0))
для того, чтобы работало в ifup и в service network start :). (ну или оставить просто eth0 и не мучаться))

Анонимно комментирует. 8 апр. 2010 г., 04:59:00

А что можно сделать, что бы при воровстве чужих, логинов и паролейот сервера статистики, при пользовании чужим тарифом тебя самого не запалили? Слышал что это палится по мак адресу это правда?только не подумайте этой бредятиной я не занимаюсь просто интересно

Анонимно комментирует. 2 окт. 2010 г., 04:40:00

Подскажите как в Ubuntu 10.04 войти под рутом, чтобы изменить МАС. Ничего из вышеперечисленного не действует. Спасибо

Дык просто до команды набирать sudo, только там мак менять нужно в NetworkManager.

Mint Linux.
файлик в /etc/network/pre-up.d сделала, в /etc/network/interfaces новый МАС тоже вписала. Работает до первого ребута О_о
Что я упустила?

Анонимно комментирует. 12 окт. 2010 г., 03:42:00

to Sakura:
на файлик pre-up.d поставить права на исполнение (x).

Анонимно комментирует. 30 окт. 2010 г., 08:48:00

Также для Sakura:
У меня инет по маку и Линукс Минт 9. Стоит 2 сетевые, на той с которой беру инет(eth0) — разболтано гнездо. коннектор не держится. Решил перебросить провод на 2 сетевую(eth1), ибо звонить в техподдержку сообщать новый МАК лень. Сменил вот как:

sudo gedit /etc/network/interfaces(редактирование файла interfaces с правами рута)
в редакторе затем заменил(!именно заменил, а не дописал — если боитесь что-то испортить — сохраните содержимое в другом файле) содержимое на:
auto eth1
iface eth1 inet dhcp
pre-up ifconfig eth1 hw ether хх:хх:хх:хх:хх:хх(это МАК, подставишь)
и сохранил. перезагрузил сеть командой:
sudo /etc/init.d/networking restart
работает. перезагрузка проявила единственный минус — с панели пропал индикатор сети. как вернуть — пока не знаю, но сие не важно. главное инет работает не до первого ребута!

Анонимно комментирует. 9 июл. 2011 г., 06:56:00

а вот подскажите пожалуйста: у меня всё прекрасно получилось сменить мак адрес. В сетевых соединениях пишет auto eth0 типа соединено, но инета нету. прописал там ещё статический ip, маску, шлюз и dns. все сделал правильно в этом я уверен, может просто чего то пропустил?
ПС: когда подключаешь кабель, автоматически не соединяется к auto eth0, а просто идёт какое то пподключение к ethernet, потом он не может соединиться и переходит в автономный режим))
помогите пожалуйста..

Dhiul комментирует. 24 сент. 2011 г., 10:11:00

В 11-той mandrive прямо в networkmanager есть клонирование MAC. Каждому сетевому соеденению приписывается свой.

Анонимно комментирует. 28 мая 2012 г., 15:27:00

Спасибо автору! статья актуальна даже сейчас в 2012году!от себя хочу сказать что если что-то добавлять в файле /etc/network/interfaces:при
установленном network-manager-пустая трата времени.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Удалить яндекс диск linux
  • Удалить файл linux по маске
  • Удалить файл linux команда
  • Удалить старые файлы linux
  • Удалить симлинк в linux