Вопрос: Как избежать разоблачения моего MAC-адреса при использовании IPv6?


На моих компьютерах Mac каждый адрес IPv6 включает MAC-адрес конкретного компьютера (не моего маршрутизатора). Сайты, такие как ipv6-test.com не только показать это, но даже сказать, что он принадлежит компьютеру Apple.

Это похоже на супер-файл cookie и может применяться и к другим операционным системам. Как я могу избежать доступа к MAC-адресам?

Предпосылки: MAC-адрес не на виду, Как для 2001:0db8:1:2:60:8ff:fe52:f9d8:

  • Возьмите последние 64 бита (идентификатор узла) и добавьте начальные нули: 0060:08ff:fe52:f9d8,
  • Разделите ff:fe часть из середины. Если этих байтов нет, тогда нет MAC-адреса.
  • Для первого байта: добавьте второй младший бит (универсальный / локальный бит, если бит равен 1, сделайте его 0, а если он равен 0, сделайте его 1). Так: 0x00 (00000000) становится 0x02 (00000010).
  • Presto: 60:8ff:fe52:f9d8 переводит обратно на MAC-адрес 02:60:08:52:f9:d8,

Примечание: начиная с macOS 10.12 Sierra, согласно Ars Technica Apple приняла новый способ создания стабильных адресов, которые не основаны на MAC-адресе, которые Windows, по-видимому, уже много лет делают.


Этот вопрос был Суперпользовательский вопрос недели,
  Прочтите запись в блоге для более подробной информации или вносить свой вклад в блог сам


131
2018-02-09 17:26


Источник


Ничего себе, я не знал, что о IPV6, приятно найти. - Not Kyle stop stalking me
Ну, конечно, это показывает компьютер Apple. Это MAC-адрес, в конце концов. - Graeme Perrow
@Kronos, изображение пропало без вести в блоге; blog.superuser.com/2011/02/11/... Добавление «.stack» к URL-адресу помогает: i.stack.imgur.com/RNXoA.png - Arjan
... но, @KronoS, добавив «.stack», фактически создает другую форму изображения, которую тот же пост блога исчезает, например i.imgur.com/vjK73.png (хорошо) против i.stack.imgur.com/vjK73.png (не все в порядке). Другими словами: возможно все изображения в блоге, которые в настоящее время не используются .stack должны быть повторно загружены ...? - Arjan
@Arjan Я не уверен. Я собираюсь проверить это. Мне бы хотелось, чтобы все изображения, загруженные в блог, автоматически загружались в учетную запись imgur стека. Как и обычные сайты в настоящее время - KronoS


Ответы:


Это то, что IPv6 Адресация адресов для. Когда включено, система будет генерировать временный адрес со случайным суффиксом в дополнение к адресу на основе EUI-64.

  • Windows (начиная с XP SP2) - включен по умолчанию в XP, Vista, 7:

    netsh interface ipv6 set privacy state=enabled
    

    Обратите внимание, что Windows больше не использует MAC-адрес для IPv6 - он начал использовать схему, похожую на RFC 7217, с уникальными адресами каждой сети.

  • Linux с NetworkManager:

    Последние версии NetworkManager обрабатывают RA самостоятельно, хотя два значения ниже имеют одинаковые значения для sysctl (2 = предпочитают адрес частной адреса, 1 = предпочитают основной адрес):

    nmcli con modify <name> ipv6.ip6-privacy 2
    

    Кроме того, с 1.2.0 стал доступен более эффективный режим, который изменяет главный адрес больше не будет основан на MAC, но вместо этого уникален для каждой сети (RFC 7217):

    nmcli con modify <name> ipv6.addr-gen-mode stable-privacy
    

    (Обратите внимание, что адресация адресации ортогональна режиму addr-gen, возможно использование обоих.)

    Замечание: Начиная с 1.4.0, NM также позволяет рандомизировать сам MAC-адрес. Задавать wifi.cloned-mac-address в stable иметь другой MAC для каждой сети (рекомендуется) или random рандомизировать его для каждый соединение (может вызвать проблемы).

    В любом случае, <name> должно быть именем соединения, например. WiFi SSID или "Wired Connection 1", использование nmcli con чтобы перечислить все.

    Чтобы сделать это по умолчанию для новый соединений, с 1.2.0 вы можете изменить /etc/NetworkManager/NetworkManager.conf:

    [connection]
    ipv6.addr-gen-mode=stable-privacy
    wifi.cloned-mac-address=stable
    
  • Linux с ядром RA:

    Чтобы включить временные адреса и сделать их предпочтительными для исходящих подключений:

    sysctl net.ipv6.conf.all.use_tempaddr=2
    sysctl net.ipv6.conf.default.use_tempaddr=2
    

    Чтобы включить временное создание адресов, но сохраните старый (Autoconf) адрес как предпочтительный:

    sysctl net.ipv6.conf.all.use_tempaddr=1
    sysctl net.ipv6.conf.default.use_tempaddr=1
    

    all или default часть может быть заменена на конкретное имя интерфейса; например net.ipv6.conf.eth0.use_tempaddr,

    (Я использовал ip link set eth0 down && ip link set eth0 up для принудительного назначения адреса, но вы также можете запустить rdisc6 eth0 или просто подождите несколько минут для следующего периодического объявления маршрутизатора.)

  • Mac OS X - включен по умолчанию, поскольку OS X 10.7 Lion:

    sysctl -w net.inet6.ip6.use_tempaddr=1
    

    Предпочтительными будут временные адреса, если они включены.

  • FreeBSD:

    sysctl net.inet6.ip6.use_tempaddr=1
    
    sysctl net.inet6.ip6.prefer_tempaddr=1
    
  • NetBSD:

    sysctl -w net.inet6.ip6.use_tempaddr=1
    

    Выбор временных адресов? Понятия не имею. Кажется, что предпочтительным является адрес autoconf. ifconfig не отображается список свойств адреса.

  • OpenBSD - поддержка добавлена ​​в 5,2; включен и предпочтен по умолчанию в 5,3,

    ifconfig em0 autoconfprivacy
    

    ifconfig показывает «autoconfprivacy» рядом с временными адресами.

Примечания по конфигурации:

  • В Linux, OS X и всех BSD, отредактируйте /etc/sysctl.conf чтобы установка была постоянной.

  • В Windows изменения будут сохраняться автоматически.

    (Append store=active к netsh если вы хотите, чтобы он продолжался только до перезагрузки.)


Частично основано на Операционные системы IPv6 на IPv6INT.net. Смотрите также Общие примечания IPv6


Если аппаратный адрес используется в IPv6-адресе, обычно это означает, что ваша сеть использует автосохранение без аутентификации IPv6. В этом случае вы можете просто выбрать свой собственный суффикс адреса и настроить IPv6 вручную.

Однако, даже если в добавленном вручную адресе не будет информации о вашем оборудовании, он все равно будет статическим (в отличие от Адресации конфиденциальности, который так часто меняет адреса). Кроме того, статические адреса могут быть болью в сети, превышающей 2-3 устройства.


125
2018-02-09 18:48



Хороший побочный эффект на моем Mac и маршрутизаторе FRITZ! Box 7340: я получаю два адреса в ifconfig, Исходящие соединения используют случайные autoconf temporaryадрес, который меняется время от времени. Хорошо! Но для входящих соединений (при открытии в моем маршрутизаторе) я все еще могу использовать autoconf адрес. Я не возражаю против того, чтобы это отображалось в записях DNS (хотя, возможно, я даже мог бы выбрать другой адрес для этого). - Arjan
Ах, после Кто есть кто-спам теперь мы получаем спам IPv6: dig -t AAAA www.v6.facebook.com ;-) - Arjan
@Arjan: адреса IPv6 по линиям de4d:b33f не так уж плохо для запоминания; Кроме того, они созданы их владельцем, тогда как whois спам a) раздражает и b) вызван аутсайдерами, которые не контролируют ваш домен. - grawity
В стороне: кажется (некоторые из) выше, может сказать ОС, что предпочитать временный адрес, но приложения все равно могут отменить это предпочтение, - Arjan
AFAICS с использованием временных адресов (конфиденциальность IPv6) эффективно непригоден для некоторых интернет-провайдеров из-за рекламы маршрутизатора с абсурдным коротким максимальным временем жизни 40 секунд, что переопределяет настройки ядра. Linux см. ip a для preferred_lft, Так ssh соединения будут разбиты каждые 40 секунд, если вы включите эту функцию. Он даже не подходит для обычных веб-серферов, так как каждая загрузка должна быть завершена в течение 40-х годов. - Tino


FYI, это относится только к определенным схемам IP-адресации. Скорее всего, вы (или ваш интернет-провайдер) используете автоконфигурацию IPv6, для чего в первую очередь требуется довольно большой блок IP. Решение может состоять в том, чтобы отключить эту функцию. Ваш интернет-провайдер может использовать DHCP для назначения адресов, что еще возможно с IPv6.


1
2018-02-09 20:49



Что касается больших блоков: согласно в Википедии в разделе «Общее распределение»: РИРы назначают более мелкие блоки для интернет-провайдеров, которые затем распределяют их по частям размером 485 для своих клиентов. Действительно, мой интернет-провайдер также назначает / 48 префиксов абонентам потребительского класса. Не слишком странно? - Arjan
Затем винить Википедию и проект Арина Планы адресации IPv6: Все клиенты получают один / 48, если они не могут показать, что им нужно более 65 тыс. Подсетей. Но также: Если у вас есть много клиентов-потребителей, вы можете захотеть назначить / 56s на сайты частных резиденций - что еще больше, чем я Когда-либо необходимость. ;-) Но все может измениться: мой ISP никогда обещанный это, хотя, очевидно, их клиенты настроили модем / маршрутизаторы на основе этого. - Arjan
Я думаю, что когда Арин говорит «клиент», они означают «ISP». Любой интернет-провайдер (в том числе очень, очень большой) может выделить один / 64 для всей своей сети и сделать с ним. Дальнейшая маршрутизация не требуется. Но выделение блоков IP-адресов, нумерующих в триллионах, для обычных клиентов-домохозяйств, является совершенно безрассудным. - Ernie Dunbar
По всей видимости, одна из причин, по которой /56: «Интернет-провайдеры, которые предоставляют /64 вообще не препятствовать какой-либо подсети. Если это /64 находится на интерфейсе WAN, тогда вы никогда не получите достойный IPv6 в своей локальной сети. Это ошибка интернет-провайдеров, и они должны исправить это, предоставив приличную сумму (/48 или /56) адресов. " - Arjan
A / 64 не является «довольно большим блоком»; это наименьшее разумный блок распределения для подсети. Для некоторых функций IPv6 требуется, чтобы подсеть была / 64, и вы забыли (или не поняли), что IPv6 был разработан в значительной степени, чтобы не допустить Когда-либозаканчивая адреса снова. Вы должны освободить свой разум от старого мышления о необходимости сохранения драгоценных адресов; ему нет места в IPv6. - Michael Hampton