16

Мой провайдер включил IPv6 для меня несколько недель назад. Теперь я заметил, что Windows (8.1) получает много временных адресов IPv6. ipconfig имеет следующий вывод (реальные адреса запутаны):

Windows IP Configuration

Ethernet adapter Ethernet:

    Connection-specific DNS Suffix  . : fritz.box
    IPv6 Address. . . . . . . . . . . : 2012:65:fd85:5712:e0ca:9e76:661f:c4f1
    Temporary IPv6 Address. . . . . . : 2012:65:fd85:5712:74:5cd9:163c:69ef
    Temporary IPv6 Address. . . . . . : 2012:65:fd85:5712:89:8f2:7643:e51e
    Temporary IPv6 Address. . . . . . : 2012:65:fd85:5712:e3:52fd:b15f:6d7d
    [...over 600 more entries...]
    Temporary IPv6 Address. . . . . . : 2012:65:fd85:5712:fda8:816e:6d3:7713
    Temporary IPv6 Address. . . . . . : 2012:65:fd85:5712:fdc9:7a6b:d2c5:e880
    Temporary IPv6 Address. . . . . . : 2012:65:fd85:5712:fdf4:11ed:9aba:9e27
    Link-local IPv6 Address . . . . . : fe80::e0ca:9e76:661f:c4f1%3
    IPv4 Address. . . . . . . . . . . : 192.168.178.22
    Subnet Mask . . . . . . . . . . . : 255.255.255.0
    Default Gateway . . . . . . . . . : fe80::a96:d7ff:fe1f:cb26%3
                                        192.168.178.1

Я действительно понятия не имею, откуда все эти адреса. Мой Mac OS X в той же сети не имеет проблем с временными адресами IPv6. Помимо того, что это странная проблема, я считаю, что количество адресов IPv6 замедляется из-за производительности моей сети в Windows.

У кого-нибудь есть идея, что вызывает такое поведение и как его предотвратить. Я бы не хотел полностью отключать временные адреса IPv6, если это возможно.

3 ответа3

13

У кого-нибудь есть идея, что вызывает такое поведение и как его предотвратить?

По ссылке, которую дал Брайан, «Временные адреса генерируются для префиксов публичных адресов, которые используют автоконфигурирование адресов без сохранения состояния».

Более конкретно, каждый процесс генерирует запрос ресурса, а ОС доставляет. SAv IPv6 определен в RFC 2462, но "Временный адрес IPv6" вызван реализацией Windows RFC 4941. Таким образом, возникает вопрос, какой процесс отвечает за инициирование запроса ОС на открытие сокета с этими расширениями конфиденциальности.

Чтобы ответить на ваш вопрос, что вызывает это, давайте посмотрим на аппаратное и программное обеспечение.

Операционные системы

Windows управляет временными адресами с параметрами, определенными в netsh interface ipv6 show privacy . Для модификации netsh interface ipv6 set privacy ?

Чтобы проверить, что они установлены на компьютере с Linux, вы должны проверить переменные ядра в /proc/sys/net . Вы можете найти подходящие значения для вашего дистрибутива с помощью sysctl -a --pattern ^net\..*ipv?6.*temp.* И измените нужную переменную с помощью sysctl -w foo.bar.var=<new value> (она должна быть похожа на вашем компьютере Apple, проверьте man sysctl)

Оборудование /OS

Вы сделали netstat -p TCPv6 , но это может быть не TCP-соединение.

Сделайте netstat -bes в нескольких минутах друг от друга и посмотрите, что такое diff между блоками * v6.

Хотя я полагаю, что это может быть аппаратная проблема из-за сбоя встроенного программного обеспечения при обработке ipv6, скорее всего, программная ОС / процесс является триггером. Если это аппаратное обеспечение, сторона программного обеспечения может не обрабатывать разрыв сеанса изящно и не может возобновить соединение по предыдущему IP. Таким образом, определение его как проблемы с программным обеспечением не обязательно исключает проблему с оборудованием.

Программное обеспечение / ОС, системные процессы и сервисы

Для этого просмотрите сетевой трафик с помощью http://www.nirsoft.net/utils/network_traffic_view.html, чтобы определить процесс.

Поскольку эти адреса, по определению, являются временными, они могут временно оставаться после завершения процесса, поэтому вы можете не видеть текущий работающий процесс с открытым соединением в NTV, если сокет немедленно закрывается.

Для этого используйте Process Explorer (http://live.sysinternals.com/tools/procexp.exe) и выделение различий (Параметры> Продолжительность выделения различий> 9), а затем перейдите к новым процессам («Просмотр»> «Прокрутить до новых процессов»). Целая строка зеленого / красного цвета показывает процесс, созданный или уничтоженный, соответственно, за последние 9 секунд.

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

1

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

Я не рекомендую отключать временные адреса IPv6. Однако вы можете отключить временные адреса IPv6 с помощью следующих команд и перезагрузки

netsh interface ipv6 set global randomizeidentifiers=disabled
netsh interface ipv6 set privacy state=disabled

В Windows 10 и Server 2016 вы можете использовать командлет PowerShell Set-NetIPv6Protocol для установки ограничений:

# The computer always generates temporary addresses by using random numbers. 
Set-NetIPv6Protocol -UseTemporaryAddresses Always

# The computer generates temporary addresses by using the interface identifier. 
# You typically use this identifier for test purposes. 
Set-NetIPv6Protocol -UseTemporaryAddresses Counter

# The computer does not use temporary addresses. 
Set-NetIPv6Protocol -UseTemporaryAddresses Disabled

# The computer uses temporary addresses.
Set-NetIPv6Protocol -UseTemporaryAddresses Enabled

Чтобы выяснить, какой процесс использует временный адрес, проверьте в столбце локального адреса соответствующий вашему временному адресу в выводе netstat:

netstat -p tcpv6 -o -f -b

Если ничего не найдено, вам нужно использовать инструмент трассировки, такой как Sysmon.

Для этого с помощью SysMon создайте файл XML IPv6.xml со следующим текстом:

<Sysmon schemaversion="3.2">
<EventFiltering>
    <NetworkConnect onmatch="include">
        <SourceIsIpv6>true</SourceIsIpv6>
    </NetworkConnect>
</EventFiltering>
</Sysmon>

Затем загрузите SysMon и установите файл конфигурации:

SysMon -i IPv6.xml

Это будет регистрировать подключения IPv6 в журнале событий Windows в разделе Журналы приложений и служб /Microsoft /Windows /Sysmon /Operational

Когда мониторинг завершен, остановите мониторинг:

SysMon -u

Если вы отфильтруете по "Идентификатору события 3", вы получите сетевые события с подробной информацией, например ниже:

Log Name:      Microsoft-Windows-Sysmon/Operational
Source:        Microsoft-Windows-Sysmon
Date:          9/01/2018 9:55:08 PM
Event ID:      3
Task Category: Network connection detected (rule: NetworkConnect)
Level:         Information
Keywords:      
User:          SYSTEM
Computer:      DESKTOP-RTTN04O
Description:
Network connection detected:
UtcTime: 2018-01-09 10:55:06.915
ProcessGuid: {14ab83bf-c0d9-5a52-0000-00102da40e00}
ProcessId: 3628
Image: C:\Windows\System32\svchost.exe
User: NT AUTHORITY\SYSTEM
Protocol: tcp
Initiated: true
SourceIsIpv6: true
SourceIp: 2001:8003:550d:d400:b81c:a2ed:f99a:b31f
SourceHostname: DESKTOP-RTTN04O.gateway
SourcePort: 55723
SourcePortName: 
DestinationIsIpv6: true
DestinationIp: 2001:8006:3510:393:0:0:0:25bb
DestinationHostname: 
DestinationPort: 443
DestinationPortName: https
-3

Держу пари, вы смотрите Netflix и / или Amazon Prime Video, а ваш браузер устанавливает временный адрес v6 для каждого потока.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .