การสอบถาม DNS ที่ส่งผ่าน ISA Server 2006 NAT ไม่ได้สุ่มพอร์ตต้นทาง

อาการ

คุณใช้ Microsoft Internet Security and Acceleration (ISA) Server 2006 เป็นเกตเวย์ Network Address Translation (NAT) และไคลเอ็นต์ภายในส่งการสอบถามระบบชื่อโดเมน (DNS) ใน ISA Server 2006 อย่างไรก็ตาม หลังจากที่คุณติดตั้งโปรแกรมปรับปรุงความปลอดภัย 953230 (MS08-037) บนไคลเอ็นต์แล้ว การสอบถาม DNS ที่ถูกส่งผ่าน ISA Server 2006 NAT ไม่ได้สุ่มพอร์ตต้นทาง

สาเหตุ

ปัญหานี้เกิดขึ้นเนื่องจากไฟร์วอลล์ที่ใช้ NAT อาจเปลี่ยนพอร์ตต้นทางที่ไคลเอ็นต์ภายในกำลังใช้งาน
สำหรับข้อมูลเพิ่มเติม ให้คลิกหมายเลขบทความต่อไปนี้ เพื่อดูบทความใน Microsoft Knowledge Base:

956190 การสอบถาม DNS ที่ถูกส่งข้ามไฟร์วอลล์ไม่ได้สุ่มพอร์ตต้นทาง หลังจากที่คุณติดตั้งโปรแกรมปรับปรุงความปลอดภัย 953230 (MS08-037)

การแก้ไข

เมื่อต้องการแก้ไขปัญหา ให้ดำเนินการตามขั้นตอนต่อไปนี้:
  1. ใช้โปรแกรมปรับปรุง ISA Server 2006 ที่มีอยู่จากศูนย์ดาวน์โหลด Microsoft: หมายเหตุหลังจากที่คุณติดตั้งโปรแกรมปรับปรุงนี้ ISA Server จะสุ่มพอร์ต UDP ขึ้นมาหนึ่งชุด จากนั้น ISA Server ก็จะเลือกหนึ่งพอร์ตจากชุดนี้ เพื่อใช้ในเซสชัน UDP ขาออกใหม่
  2. รีสตาร์ทคอมพิวเตอร์ที่ใช้ ISA Server

การหลีกเลี่ยงปัญหา

ในการแก้ไขปัญหาดังกล่าว ใช้เฉพาะวิธีการที่ระบุในบทความ KB ต่อไปนี้

956190 การสอบถาม DNS ที่ถูกส่งข้ามไฟร์วอลล์ไม่ได้สุ่มพอร์ตต้นทาง หลังจากที่คุณติดตั้งโปรแกรมปรับปรุงความปลอดภัย 953230 (MS08-037)

สถานะ

Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "การใช้งาน"

ข้อมูลเพิ่มเติม

วิธีแก้ไขขนาดของซ็อกเก็ตพูล

หลังจากที่คุณติดตั้งโปรแกรมปรับปรุง คุณสามารถปรับปรุงรีจิสทรีเพื่อกำหนดค่าขนาดของซ็อกเก็ตพูลที่ ISA Server สร้างขึ้นเมื่อตอนเริ่มต้นระบบ

แก้ไขปัญหาให้ฉัน

ในการเพิ่มขนาดของซ็อกเก็ตพูลโดยอัตโนมัติ คลิกการเชื่อมโยง แก้ไขปัญหานี้ แล้วคลิก เรียกใช้ ในกล่องโต้ตอบ ดาวน์โหลดแฟ้ม และปฏิบัติตามขั้นตอนในตัวช่วยสร้าง


หมายเหตุ ตัวช่วยสร้างนี้อาจมีเฉพาะในภาษาอังกฤษเท่านั้น แต่การแก้ไขอัตโนมัติยังสามารถใช้ได้กับ Windows รุ่นภาษาอื่นด้วย

หมายเหตุ หากคุณไม่ได้ใช้งานคอมพิวเตอร์เครื่องที่มีปัญหา คุณสามารถบันทึกการแก้ไขอัตโนมัติในแฟลชไดรฟ์หรือซีดี เพื่อให้คุณสามารถเรียกใช้งานบนคอมพิวเตอร์ที่มีปัญหา


ให้ฉันแก้ไขด้วยตนเอง

ข้อสำคัญ ส่วน วิธีการ หรืองานนี้ประกอบด้วยขั้นตอนต่างๆ เกี่ยวกับวิธีการปรับเปลี่ยนรีจิสทรี อย่างไรก็ตาม ปัญหาร้ายแรงอาจเกิดขึ้นหากคุณปรับเปลี่ยนรีจิสทรีไม่ถูกต้อง ดังนั้น โปรดตรวจสอบให้แน่ใจว่าคุณได้ทำตามขั้นตอนเหล่านี้อย่างระมัดระวัง สำหรับการป้องกันเพิ่มเติม ให้สำรองรีจิสทรีก่อนทำการปรับเปลี่ยน จากนั้นคุณจะสามารถคืนค่ารีจิสทรีได้หากมีปัญหาเกิดขึ้น สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสำรองข้อมูลและคืนค่ารีจิสทรี โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
322756 วิธีการสำรองข้อมูลและคืนค่ารีจิสทรีใน Windows
ในการเพิ่มขนาดซ็อกเก็ตพูลด้วยตัวคุณเอง ให้ทำตามขั้นตอนต่อไปนี้
  1. คลิกที่ เริ่ม คลิก เรียกใช้ พิมพ์ regedit แล้วคลิก ตกลง
  2. ค้นหาและคลิกขวาที่รีจิสทรีคีย์ต่อไปนี้:
    HKLM\System\CurrentControlSet\Services\Fweng\Parameters
  3. ชี้ไปที่ สร้าง แล้วคลิก ค่า DWORD
  4. พิมพ์ ReservedPortThreshold
  5. คลิกสองครั้งที่ ReservedPortThreshold แล้วพิมพ์ตัวเลขในกล่อง ข้อมูลค่า เพื่อกำหนดขนาดของซ็อกเก็ตพูล
  6. รีสตาร์ทคอมพิวเตอร์ที่ใช้ ISA Server
หมายเหตุค่าของรายการ ReservedPortThreshold มีช่วงตั้งแต่ 1 ถึง 1250 โดยค่าดังกล่าวจะกำหนด 1/2 ของจำนวนพอร์ตที่จะกำหนดให้ในตอนเริ่มต้นระบบและตามความต้องการในระหว่างการทำงาน ถ้าไม่มีรายการดังกล่าว ISA Server จะถือว่ามีค่า 50 การเปลี่ยนค่าให้น้อยกว่า 1250 จะเพิ่มความสามารถในการคาดหมายของการใช้พอร์ตต้นทางภายในพูล และไม่ขอแนะนำ

ในการตั้งค่ารายการรีจิสทรีดังกล่าวเป็นค่าที่แนะนำ ให้เรียกใช้คำสั่งต่อไปนี้ที่ข้อความแจ้งคำสั่ง:
reg add HKLM\SYSTEM\CurrentControlSet\Services\Fweng\Parameters /v ReservedPortThreshold /t REG_DWORD /d 1250 /f

วิธีปิดใช้งานโปรแกรมปรับปรุง

หากคุณประสบปัญหาหลังจากที่ติดตั้งโปรแกรมปรับปรุงนี้ คุณสามารถปิดใช้งานโปรแกรมปรับปรุงนี้ได้

แก้ไขปัญหาให้ฉัน

ในการปิดใช้งานโปรแกรมปรับปรุงนี้โดยอัตโนมัติ คลิกที่การเชื่อมโยง แก้ไขปัญหานี้ แล้วคลิก เรียกใช้ ในกล่องโต้ตอบ ดาวน์โหลดแฟ้ม และปฏิบัติตามขั้นตอนในตัวช่วยสร้าง


หมายเหตุ ตัวช่วยสร้างนี้อาจมีเฉพาะในภาษาอังกฤษเท่านั้น แต่การแก้ไขอัตโนมัติยังสามารถใช้ได้กับ Windows รุ่นภาษาอื่นด้วย

หมายเหตุ หากคุณไม่ได้ใช้งานคอมพิวเตอร์เครื่องที่มีปัญหา คุณสามารถบันทึกการแก้ไขอัตโนมัติในแฟลชไดรฟ์หรือซีดี เพื่อให้คุณสามารถเรียกใช้งานบนคอมพิวเตอร์ที่มีปัญหา


ให้ฉันแก้ไขปัญหาเอง

ในการปิดใช้งานโปรแกรมปรับปรุงนี้ด้วยตนเอง ให้ปฏิบัติตามขั้นตอนต่อไปนี้
  1. บันทึกสคริปต์ต่อไปนี้ลงในแฟ้ม KB956570.vbs
    '-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
    '
    ' This code is Copyright (c) 2008 Microsoft Corporation.
    '
    ' All rights reserved.
    '
    ' THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
    ' ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
    ' THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
    ' PARTICULAR PURPOSE.
    '
    ' IN NO EVENT SHALL MICROSOFT AND/OR ITS RESPECTIVE SUPPLIERS BE
    ' LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
    ' DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
    ' WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
    ' ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
    ' OF THIS CODE OR INFORMATION.
    '
    '-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"
    Const SE_VPS_NAME = "BindRandomizationCount"
    Const SE_VPS_VALUE = 0

    Sub SetValue()

    ' Create the root object.
    Dim root ' The FPCLib.FPC root object
    Set root = CreateObject("FPC.Root")

    'Declare the other objects needed.
    Dim array ' An FPCArray object
    Dim VendorSets ' An FPCVendorParametersSets collection
    Dim VendorSet ' An FPCVendorParametersSet object

    ' Get references to the array object
    ' and the network rules collection.
    Set array = root.GetContainingArray
    Set VendorSets = array.VendorParametersSets

    On Error Resume Next
    Set VendorSet = VendorSets.Item( SE_VPS_GUID )

    If Err.Number <> 0 Then
    Err.Clear

    ' Add the item
    Set VendorSet = VendorSets.Add( SE_VPS_GUID )
    CheckError
    WScript.Echo "New VendorSet added... " & VendorSet.Name

    Else
    WScript.Echo "Existing VendorSet found... value- " & VendorSet.Value(SE_VPS_NAME)
    End If

    if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then

    Err.Clear
    VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE

    If Err.Number <> 0 Then
    CheckError
    Else
    VendorSets.Save false, true
    CheckError

    If Err.Number = 0 Then
    WScript.Echo "Done with " & SE_VPS_NAME & ", saved!"
    End If
    End If
    Else
    WScript.Echo "Done with " & SE_VPS_NAME & ", no change!"
    End If

    End Sub

    Sub CheckError()

    If Err.Number <> 0 Then
    WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description
    Err.Clear
    End If

    End Sub

    SetValue
  2. คลิกที่ เริ่ม คลิก เรียกใช้ พิมพ์ cmd และคลิกที่ ตกลง
  3. ที่พรอมต์คำสั่ง ให้พิมพ์คำสั่งต่อไปนี้ แล้วกด ENTER:
    cscript KB956570.vbs
  4. รีสตาร์ทคอมพิวเตอร์ที่ใช้ ISA Server

ข้อมูลอ้างอิง

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับปัญหาดังกล่าว โปรดเยี่ยมชมเว็บไซต์ของ Microsoft ต่อไปนี้:สำหรับข้อมูลเพิ่มเติมเกี่ยวกับโปรแกรมปรับปรุง MS08-037 ให้คลิกหมายเลขบทความต่อไปนี้ เพื่อดูบทความใน Microsoft Knowledge Base:

953230 MS08-037: จุดอ่อนใน DNS อาจทำให้เกิดการลวงให้ผู้รับเข้าใจผิดได้

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคำศัพท์ของการปรับปรุงซอฟต์แวร์ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
824684 คำอธิบายของคำศัพท์มาตรฐานที่ใช้เพื่ออธิบายการปรับปรุงซอฟต์แวร์ของ Microsoft
คุณสมบัติ

รหัสบทความ: 956570 - การตรวจสอบครั้งสุดท้าย: 14 ต.ค. 2010 - ฉบับแก้ไข: 1

คำติชม