Windows 2008 mengabaikan permintaan ARP serampangan

38

Kami baru-baru ini melihat masalah setelah kegagalan router kami di mana Kotak 2008 Windows kami tidak mulai berbicara dengan router utama setelah gagal kembali.

Ketika kami melakukan penggalian, mereka masih memiliki entri ARP dari router sekunder. Menurut Blog TechNet ini adalah desain-by:

Pertama, Windows Vista atau Windows Server 2008 tidak akan memperbarui cache Neighbor jika siaran ARP diterima kecuali itu adalah bagian dari permintaan ARP siaran untuk penerima . Apa artinya ini adalah bahwa ketika ARP serampangan dikirim pada jaringan dengan Windows Vista dan Widows Server 2008, sistem ini tidak akan memperbarui cache mereka dengan informasi yang salah jika ada konflik alamat IP.

Kedua, tampaknya windows tetangga-cache (arp-cache) hanya diperbarui jika mesin tidak dapat lagi berbicara dengan mesin yang ada dalam cache saat ini. Ini tidak mengirimkan permintaan ARP sesekali untuk memastikan cache tidak basi. Meskipun ini bukan masalah selama kegagalan awal berakhir, selama gagal kembali ketika kedua kotak hidup, ini menyebabkan windows terus berbicara dengan kotak sekunder.

Apakah ada cara untuk memaksa Windows 2008 untuk menerima permintaan ARP serampangan?

Zypher
sumber

Jawaban:

8

Setelah pengujian tampaknya perbaikan terbaru 2582281 masalah. Anda bisa mendapatkan perbaikan terbaru tanpa harus membayar dukungan dengan menggunakan halaman permintaan perbaikan terbaru mereka .

Saya menjalankan tes ini menggunakan arpingdan tidak terbuka windows 2008 R2. Saya menambahkan IP sekunder, 64.34.119.80, ke mesin dengan di segmen L2 jaringan yang sama. Saya kemudian mengeluarkan perintah berikut dari mesin yang berbeda jaringan ( sudo arping -U 64.34.119.80 -I bond0 -c1). Tepat setelah itu, saya melakukan ping 64.34.119.80 dari kotak windows setelah melihatnya menerima arp di wireshark. Saya kemudian menerapkan perbaikan terbaru dan mengulangi tes.

Juga, tampaknya perintah arping tidak perlu menggunakan alamat MAC unicast melainkan MAC siaran karena ini adalah satu-satunya jenis GARP yang diabaikan dari pengujian saya.

Sebelum tambalan:

masukkan deskripsi gambar di sini

Dalam penangkapan wireshark ini, ping setelah permintaan GARP tidak dikirim ke Tujuan MAC tempat GARP berasal, sehingga Anda dapat melihat bahwa GARP diabaikan.

Setelah tambalan:

masukkan deskripsi gambar di sini

Dalam pengujian ini, setelah tambalan, permintaan GARP tampaknya merasa terhormat karena ping dikirim ke alamat MAC tempat GARP berasal.

Jadi dari tes ini tampaknya perbaikan terbaru 2582281 memperbaiki masalah siaran GARP diabaikan.

Kyle Brandt
sumber
4

Saat meneliti masalah TCPIP saya sendiri sekarang, saya menemukan Hotfix yang sangat menarik ini:

http://support.microsoft.com/kb/2582281

Sebab:

Masalah ini terjadi karena tumpukan TCP / IP dari server aplikasi salah mengabaikan permintaan Address Resolution Protocol (ARP).

Ini terdengar sangat buruk seperti apa yang Anda temui. Dan ini juga merupakan perbaikan terbaru, dirilis 7/22/2011, jadi tidak ada ketika Anda pertama kali melihatnya.

sysadmin1138
sumber
Sepertinya KB ini lenyap?
Kyle Brandt
@KyleBrandt Itu ada di sana, dan sekarang hilang. Saya ingin tahu apakah masalahnya sekarang tercakup dalam paket layanan / pembaruan di tempat lain, mungkin yang ini: support.microsoft.com/kb/2578103
sysadmin1138
3

Coba di netsh interface ipv4 set interface x basereachable=ymana x adalah indeks antarmuka dan y adalah batas waktu ARP dalam milidetik yang Anda inginkan. Ingatlah untuk melakukannya dari prompt perintah dengan hak istimewa admin!


sumber
2
Itu sebenarnya hanya menyesuaikan waktu antara ketika cache tetangga berpikir bahwa entri tersebut basi vs terjangkau. Jika kedua kotak HA naik pada saat gagal kembali, maka Windows tidak akan pernah melihatnya sebagai basi dan re-arp.
Zypher
1
Saya tidak berpikir ada cara untuk memaksa Windows untuk menerima ARP gratis. Bahkan, saya harus menurunkan waktu basereachable untuk mencapai failover / failback dalam skenario yang berbeda karena ini.
3

Protokol redundansi hop pertama apa yang Anda gunakan?

Saya sadar ini tidak menjawab pertanyaan Anda secara langsung, namun VRRP (dan pendahulunya yang berpemilik, HSRP) menggunakan alamat MAC bersama yang dibalik ke port switch baru ketika router utama berubah. Ini memenuhi kebutuhan ARP serampangan sepenuhnya.

Murali Suriar
sumber
1

Prereq
1. WinPCAP 4.0.1 (versi 4.1.2 tidak berfungsi)
- http://www.winpcap.org/archive/4.0.1-WinPcap.exe (Versi Windows)
2. Wireshark 1.6.7
3. IPv6 dinonaktifkan pada antarmuka jaringan, karena pembatasan arping
4. arping
- http://mathieu.carbou.free.fr/pub/arping/2.06/arping.zip (Windows Binary)

Eksekusi
1. Dapatkan Inteface Name
- "E: \ Program Files \ Wireshark \ tshark.exe "-D
- Dari detail antarmuka Wireshark
2. Jalankan arping, untuk mengirim permintaan
serampangan ARP - arping.exe -A -i \ Device \ NPF_ {4399F778-AF25-4B6D-AFFB-A1F2C7DFA667} 10.20.30.50 -c 3 -S 10.20.30.50
Di mana 10.20.30.50 adalah alamat ip yang ingin Anda umumkan ke jaringan (router)

Antonio N
sumber
-4

Saya menemukan ini di tautan dari http://blog.serverfault.com/post/windows-2008-and-broken-arp/ .

Seandainya Anda bertanya tentang stackoverflow, Anda mungkin telah memperbaikinya lebih cepat.

Sniff paket GARP dan jalankan arp -s inet_addr eth_addr.

Jangan lakukan ini jika ada peluang paling jauh untuk mendapatkan mesin yang bermusuhan di LAN Anda.

joshudson
sumber
Itu tidak benar-benar memperbaiki. Ini solusi yang bekerja pada satu mesin. Perilaku itu masih rusak. Semua yang dilakukan adalah secara manual mengubah alamat di tabel arp, tidak memperbaiki akar penyebab perilaku.
Zypher