Mengapa Windows saya memiliki ratusan alamat IPv6 sementara?

17

ISP saya mengaktifkan IPv6 untuk saya beberapa minggu yang lalu. Sekarang saya melihat bahwa Windows (8.1) mendapatkan banyak alamat IPv6 sementara. ipconfigmemiliki keluaran berikut (alamat asli dikaburkan):

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

Saya benar-benar tidak tahu dari mana semua alamat ini berasal. Mac OS X saya di jaringan yang sama tidak memiliki masalah dengan alamat IPv6 sementara. Selain menjadi masalah aneh, saya percaya jumlah alamat IPv6 melambat karena kinerja jaringan saya di Windows.

Adakah yang tahu apa yang memicu perilaku ini dan bagaimana cara mencegahnya. Saya tidak ingin menonaktifkan alamat IPv6 sementara sepenuhnya jika memungkinkan.

fschoenm
sumber
Saat menulis pertanyaan ini, Windows saya mendapat sekitar 50 alamat IPv6 sementara lebih banyak.
fschoenm
1
Apakah Anda memiliki program membuka koneksi dan menjaganya tetap terbuka ? Itulah penyebab biasa hal ini. Juga, tidak satu pun dari alamat itu yang benar-benar valid; 2012::/8belum dialokasikan. Itu bisa menjadi masalah juga.
Michael Hampton
@MichaelHampton: Maaf, saya agak membingungkan alamatnya.
Alamatnya
6
(BTW, jika Anda ingin mengaburkan alamat IPv6 Anda, selalu gunakan 2001:db8::/32, ( RFC 3849 ) yang akan membuatnya jelas bahwa mereka adalah alamat contoh.)
Michael Hampton
1
Alamat itu sendiri sebagian dihasilkan secara acak. Baca Randomly generated interface identifierbagian: msdn.microsoft.com/en-us/library/aa915616.aspx
Brian

Jawaban:

14

Adakah yang tahu apa yang memicu perilaku ini dan bagaimana cara mencegahnya?

Dari tautan yang diberikan Brian kepada Anda, "Alamat sementara dihasilkan untuk awalan alamat publik yang menggunakan konfigurasi otomatis alamat stateless."

Lebih khusus, setiap proses menghasilkan permintaan sumber daya dan OS memberikan. SAv IPv6 didefinisikan dalam RFC 2462 , tetapi "Alamat IPv6 Sementara" adalah karena implementasi Windows RFC 4941 . Jadi pertanyaannya menjadi proses apa yang bertanggung jawab untuk memulai permintaan OS untuk membuka soket yang memiliki Ekstensi Privasi ini.

Untuk menjawab pertanyaan Anda apa yang memicu ini, mari kita lihat perangkat keras dan perangkat lunak.

OS

Windows mengelola alamat sementara dengan parameter yang ditentukan dalam netsh interface ipv6 show privacy. Untuk mengubahnetsh interface ipv6 set privacy ?

Untuk memeriksa apa yang diatur pada mesin Linux, Anda akan memeriksa variabel kernel di /proc/sys/net. Anda dapat menemukan nilai terkait untuk distro Anda sysctl -a --pattern ^net\..*ipv?6.*temp.*dan mengubah variabel yang diinginkan sysctl -w foo.bar.var=<new value>(harus serupa pada mesin Apple Anda, periksa man sysctl)

Perangkat Keras / OS

Anda melakukannya netstat -p TCPv6, tetapi itu mungkin bukan koneksi TCP.

Lakukan netstat -besbeberapa menit dari satu sama lain dan lihat perbedaan antara blok * v6.

Sementara saya kira itu bisa menjadi masalah perangkat keras karena firmware NIC gagal menangani ipv6, itu lebih cenderung menjadi perangkat lunak OS / proses yang menjadi pemicunya. Jika itu adalah perangkat keras, sisi perangkat lunak mungkin tidak menangani istirahat dalam sesi dengan anggun dan tidak dapat melanjutkan koneksi pada IP sebelumnya. Jadi IDing sebagai masalah perangkat lunak tidak selalu mencegah masalah perangkat keras.

Proses dan layanan sistem perangkat lunak / OS

Untuk ini, lihat lalu lintas jaringan dengan http://www.nirsoft.net/utils/network_traffic_view.html untuk mengidentifikasi prosesnya.

Karena alamat ini, menurut definisi, bersifat sementara, mereka dapat tetap sementara setelah proses berakhir, sehingga Anda mungkin tidak melihat arus, proses yang berjalan dengan koneksi terbuka di NTV jika soket segera ditutup.

Untuk ini gunakan Process Explorer ( http://live.sysinternals.com/tools/procexp.exe ) dan penyorotan perbedaan (Opsi> Perbedaan Durasi Sorotan> 9) lalu gulir ke proses baru (Lihat> Gulir ke proses baru). Seluruh baris hijau / merah menunjukkan proses yang dibuat atau dihancurkan, masing-masing, dalam 9 detik terakhir.

Setelah Anda mengidentifikasi prosesnya, jika itu adalah browser atau aplikasi apa pun dengan plugin, Anda harus men-debug plugin atau situs web javascript mana yang mungkin menyebabkan masalah dengan memulai browser dalam mode aman dan mengaktifkan plugin dengan plugin.

adam
sumber
Terima kasih, saya akan mencoba beberapa hal itu. Namun, setelah reboot Windows saya tidak memiliki alamat IPv6 sementara sama sekali jadi saya harus menunggu. Ini benar-benar membuat frustrasi.
fschoenm
1
Saya pikir saya menemukan masalah saya: Ketika mencoba menggunakan NetworkTrafficView seperti yang Anda sarankan, saya perhatikan bahwa instalasi WinPcap saya entah bagaimana rusak. Saya tidak bisa menggunakan Wireshark atau NetworkTrafficView karena mereka berdua hang ketika mulai. Saya menginstal ulang WinPcap dan sejak itu semuanya berjalan lancar!
fschoenm
1

Karena pengidentifikasi alamat IPv6 tetap statis, untuk alasan keamanan, alamat sementara digunakan. Alamat sementara adalah pengidentifikasi antarmuka IPv6 yang memberikan tingkat anonimitas. Alamat-alamat ini dapat dibuat secara acak dan diubah seiring waktu. Protokol IPv6 untuk Windows membuat alamat sementara untuk awalan alamat global secara default.

Saya tidak merekomendasikan menonaktifkan alamat IPv6 sementara. Namun Anda dapat menonaktifkan alamat IPv6 sementara dengan perintah berikut dan reboot

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

Di Windows 10 dan Server 2016 Anda dapat menggunakan cmdlet PowerShell Set-NetIPv6Protocol untuk menetapkan batas:

# 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

Untuk menemukan proses apa yang menggunakan alamat sementara periksa item dengan kolom alamat lokal yang cocok dengan alamat sementara Anda dalam output netstat:

netstat -p tcpv6 -o -f -b

Jika itu gagal menemukan apa pun yang Anda butuhkan untuk menggunakan alat pelacak , seperti Sysmon

Untuk melakukan ini dengan SysMon, buat file XML IPv6.xml dengan teks berikut:

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

Kemudian unduh SysMon dan instal file konfigurasi:

SysMon -i IPv6.xml

Ini akan mencatat koneksi IPv6 di Windows Event log di bawah Applications and Services Logs / Microsoft / Windows / Sysmon / Operational

Ketika pemantauan selesai, hentikan pemantauan:

SysMon -u

Jika Anda memfilter berdasarkan "ID Peristiwa 3" Anda akan mendapatkan acara jaringan, dengan detail seperti di bawah ini:

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
Malcolm McCaffery
sumber
-3

Taruhan saya adalah Anda menonton Netflix dan / atau Amazon Prime Video dan browser Anda menetapkan alamat temp v6 untuk setiap streaming.

Menandai
sumber
2
Tidak perlu bertaruh. Browser tidak mendapatkan alamat IPv6, hanya karena tidak bisa.
Daniel B