Что такое MAC - адрес ?Что такое уникальный идентификатор для ПК?[дубликат]

StackOverflow https://stackoverflow.com/questions/2428949

  •  19-09-2019
  •  | 
  •  

Вопрос

У меня есть компьютер с двумя ядрами, у него есть два MAC-адреса :00-1Д....& 00-21.....Являются ли эти идентификаторы для двух ядер ?Если я хочу получить уникальный идентификатор для этого компьютера, как получить его с помощью вызова Java?Может быть, в Java есть что-то вроде "System.getId()" ?

Фрэнк

Это было полезно?

Решение

MAC расшифровывается как Media Access Control (Контроль доступа к мультимедиа).MAC-адрес обычно представляет собой уникальный идентификатор вашего сетевого адаптера (ов).На вашем компьютере должно быть два сетевых адаптера (LAN, WLAN?).

Посмотрите здесь, здесь описывается, как получить уникальный системный идентификатор в JAVA:Как получить уникальный идентификатор компьютера в Java (например, идентификатор диска или материнской платы)

И .NET:http://sowkot .blogspot.com/2008/08/generating-unique-keyfinger-print-for.html

Майкл

Другие советы

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

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

Вы должны привязывать уникальные идентификаторы не к оборудованию, а к конечному пользователю.Аппаратное обеспечение может быть изменено, конечный пользователь - нет.Итак, попросите конечного пользователя заполнить какую-нибудь регистрационную форму (или предоставить ключ, как отвечает Pascal).

MAC-адрес - это число, которое идентифицирует интерфейс сетевой карты.Вы не можете использовать это для надежной идентификации конкретной машины (пользователь может изменить свой сетевой адаптер, опытный пользователь может даже динамически изменять MAC-адрес).

Может быть, вы могли бы использовать программную защиту донгл (похоже, что есть Java - решения).Но обратите внимание, что даже это решение не решает всю проблему доверенного клиента.

Из Google ::Адрес управления доступом к носителю (MAC-адрес) - это уникальный идентификатор, назначаемый большинству сетевых адаптеров или сетевого интерфейса.

Идентификаторы предназначены для сетевых интерфейсов.Они также не являются неизменяемыми и не всегда уникальны из-за этого.

Посмотрите на java.net.NetworkInterface и java.net .InetAddress для методов извлечения информации о MAC.

MAC - это идентификатор управления доступом к носителю, первые два байта представляют страну, а 4 байта - производителя.К сожалению, нет двух одинаковых адаптеров, но с появлением современного массового производства сетевых адаптеров MAC можно легко динамически менять.В прежние времена сетевые адаптеры состояли из DIP-переключателей (двух встроенных контактов), которые позволяли изменять настройки сетевого адаптера, такие как IRQ, адрес перемычки и так далее...

Они не имеют ничего общего с процессорными ядрами, это отдельная аппаратная составляющая.

Портативного способа получения MAC-адреса не существует, теоретически вы могли бы использовать ifconfig команда для вариантов *nix/Linux.Для среды Windows вы могли бы использовать ipconfig команда, используя любую из них, вы могли бы выполнить поиск соответствующего адаптера, о котором идет речь...как это было бы в этом примере под Linux show...my сетевой адаптер называется 'eth0'...

ifconfig eth0 | grep HWaddr | cut -d\t -f4

бы вернуться:

  HWaddr 00:02:03:04:05:06
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top