Defaults.Exposed › Cách khắc phục › Thiết lập nameserver (đa dạng & SOA)
Cách khắc phục Thiết lập nameserver (đa dạng & SOA)
Các nameserver của bạn là thư mục nói với toàn bộ internet nơi tìm thấy website và email của bạn. Nếu tất cả chúng đều nằm trên một mạng và mạng đó ngừng hoạt động, doanh nghiệp của bạn biến mất khỏi internet cùng một lúc — không có trang web, không có email, không có gì — và cài đặt đồng hồ không chính xác trên những máy chủ đó có thể khiến các thay đổi bạn thực hiện bị kẹt trong nhiều ngày.
Điểm mấu chốt với doanh nghiệp bạn: Nếu mọi nameserver cho tên miền của bạn đều sống trên một mạng duy nhất, một sự cố hoặc tấn công trên mạng đó đưa website VÀ email của bạn ngoại tuyến cùng nhau — bạn tiếp tục trả tiền nhân viên và quảng cáo trong khi không có khách hàng nào có thể tiếp cận bạn. Riêng biệt, bộ đếm thời gian SOA được cấu hình sai có thể khiến các thay đổi DNS của bạn (máy chủ mới, nhà cung cấp email đã chuyển, chuyển hướng khẩn cấp) lan truyền trong nhiều ngày thay vì nhiều giờ.
Điều này có thể gây thiệt hại gì
- Một mạng duy nhất mà tất cả nameserver của bạn ngồi có một buổi chiều tệ — sự cố hoặc tấn công DDoS — và website cùng email của bạn biến mất cùng một lúc. Khách hàng nhận trang lỗi, hộp thư bán hàng của bạn bị từ chối, và không có gì web người của bạn có thể làm ngoài chờ mạng của người khác phục hồi.
- Nhóm bảo mật của khách hàng lớn hơn chạy kiểm tra nhà cung cấp, thấy tất cả nameserver của bạn trên một nhà cung cấp không có dự phòng, và ghi nhận tên miền của bạn là điểm lỗi đơn — ma sát trên hợp đồng bạn nếu không đã thắng.
- Bạn chuyển sang web host mới hoặc chuyển nhà cung cấp email, nhưng bộ đếm thời gian 'refresh' sai trong bản ghi SOA của bạn có nghĩa là các máy chủ DNS khác tiếp tục đưa ra địa chỉ cũ của bạn trong nhiều ngày — vì vậy một số khách hàng hạ cánh trên trang chết và email của bạn chia làm hai.
- Sự cố bảo mật buộc bạn phải chuyển hướng lưu lượng khẩn cấp, nhưng bộ đếm thời gian SOA của bạn nói với thế giới lưu vào bộ nhớ đệm các bản ghi cũ của bạn trong một tuần, vì vậy thay đổi bạn thực hiện một giờ trước vẫn chưa đến nửa internet trong khi vấn đề tiếp tục.
- Hai nameserver của bạn về mặt kỹ thuật là hai tên, nhưng chúng phân giải thành cùng một rack trên cùng một mạng — vì vậy sự dự phòng bạn nghĩ bạn có là ảo tưởng, và một lỗi đơn vẫn hạ gục mọi thứ.
Tại sao điều này quan trọng. Mỗi lần ghé thăm website của bạn và mọi email gửi cho bạn bắt đầu với tra cứu đối với nameserver của bạn. Chúng là nền tảng mà phần còn lại của sự hiện diện trực tuyến của bạn ngồi trên. Nếu nền tảng đó không có dự phòng, một lỗi đơn làm sập mọi thứ cùng một lúc; nếu giá trị thời gian của nó sai, mọi thay đổi bạn thực hiện chậm có hiệu lực — chính xác khi bạn không thể chịu đựng điều đó.
Thực ra là gì, giải thích đơn giản
Trước khi bất kỳ ai có thể tiếp cận website của bạn hoặc gửi email cho bạn, máy tính của họ phải hỏi một câu hỏi đơn giản: “tên miền này thực sự sống ở đâu?” Các máy chủ trả lời câu hỏi đó là nameserver của bạn. Chúng là mục thư mục cho toàn bộ sự hiện diện trực tuyến của bạn — thứ đầu tiên mọi khách truy cập và mọi email chạm vào, trước khi trang web hoặc hộp thư của bạn thậm chí được liên quan.
Trang này bao gồm hai phần để có thư mục đó đúng:
- Đa dạng — bạn có ít nhất hai nameserver không, và chúng có ngồi trên các phần mạng thực sự riêng biệt, để một sự cố đơn lẻ không thể im lặng tất cả cùng lúc?
- Bản ghi SOA — bản ghi “start of authority” nhỏ giữ các giá trị thời gian kiểm soát bao lâu phần còn lại của internet tin tưởng và lưu vào bộ nhớ đệm các câu trả lời DNS của bạn. Sai bộ đếm thời gian và mọi thay đổi bạn thực hiện mất nhiều thời gian hơn để đến với thế giới.
Không cái nào hào nhoáng. Cả hai đều là nền tảng. Khi chúng đúng bạn không bao giờ nghĩ về chúng; khi chúng sai, bạn phát hiện ra vào thời điểm tệ nhất có thể.
Điều này có thể khiến bạn mất gì
-
Mọi thứ ngoại tuyến cùng một lúc. Nếu tất cả nameserver của bạn sống trên một mạng và mạng đó có sự cố hoặc bị tấn công DDoS, website và email của bạn cùng tối. Điều này không phải lý thuyết — một nhà cung cấp DNS đơn bị tấn công đã làm tắt các công ty lớn, có nguồn lực tốt khỏi internet trong phần lớn một ngày. Với sự dự phòng trên các mạng, một lỗi có thể sống sót; không có nó, đó là hoàn toàn.
-
Thỏa thuận bị mất trong kiểm tra nhà cung cấp. Nhóm bảo mật hoặc thu mua của khách hàng lớn hơn chạy kiểm tra trước khi ký, thấy tất cả nameserver của bạn tập trung trên một nhà cung cấp không có dự phòng, và gắn cờ tên miền của bạn là điểm lỗi đơn. Đó là loại dấu nhỏ, có thể tránh được thêm ma sát vào hợp đồng bạn có thể thắng.
-
Các thay đổi không thực hiện được. Bạn chuyển web host, di chuyển nhà cung cấp email, hoặc cần chuyển hướng lưu lượng vội. Bộ đếm thời gian “refresh” hoặc “expire” sai trong bản ghi SOA có nghĩa là các máy chủ DNS khác tiếp tục phục vụ câu trả lời cũ của bạn trong nhiều ngày. Một nửa khách hàng hạ cánh trên trang mới, nửa kia trên trang chết; một số email chảy đến nhà cung cấp cũ, một số đến nhà cung cấp mới. Thay đổi bạn thực hiện một giờ trước vẫn chưa xong.
-
Sự cố khẩn cấp bạn không thể kết thúc nhanh. Trong sự cố bảo mật bạn cần chỉ lưu lượng ra khỏi máy chủ bị xâm phạm ngay bây giờ. Nếu bộ đếm thời gian SOA của bạn nói với thế giới lưu bản ghi của bạn trong một tuần, bản sửa của bạn bò ra trên internet trong khi vấn đề tiếp tục cắn.
-
Sự dự phòng không thật. Bạn có hai nameserver, vì vậy bạn cho rằng bạn được che — nhưng cả hai phân giải thành cùng một rack trên cùng một mạng. Lỗi phần cứng đầu tiên hạ gục tất, và lưới an toàn bạn đang dựa vào chưa bao giờ ở đó.
Thực ra nó là gì
Đa dạng nameserver. Tên miền của bạn nên liệt kê ít nhất hai nameserver, và lý tưởng là chúng nên ngồi trên các đường mạng thực sự độc lập — không chỉ hai tên trỏ đến cùng một máy. Đằng sau hậu trường, mỗi tên nameserver phân giải thành một hoặc nhiều địa chỉ IP, và điều thực sự quan trọng là liệu những địa chỉ đó có chiếm các phần khác nhau của định tuyến internet không. Nhà cung cấp DNS nghiêm túc lan rộng nameserver của họ qua nhiều khối mạng và vị trí riêng biệt trên khắp thế giới, vì vậy ngay cả hai nameserver từ cùng một nhà cung cấp cũng cho bạn sự dự phòng thực sự, độc lập. Trường hợp lỗi là ngược lại: một host nhỏ đơn lẻ nơi cả hai “nameserver” là cùng một máy, vì vậy một lỗi là hoàn toàn.
Ghi chú cho người đọc kỹ thuật: kiểm tra của chúng tôi đếm bản ghi NS của bạn và sau đó nhìn vào mức độ đa dạng mạng thực sự đằng sau chúng. Tín hiệu chính là sự lan rộng của các khối mạng IP khác biệt mà nameserver phân giải vào (khoảng /16 cho IPv4 và /32 cho IPv6), với số lượng tên nhà cung cấp khác biệt như backstop. Điều này cố ý ghi nhận các nhà cung cấp hyperscale Anycast — Cloudflare, Google, AWS Route 53, Azure DNS — công bố một danh tính mạng từ nhiều đường định tuyến toàn cầu riêng biệt và vì vậy cung cấp sự đa dạng thực sự ngay cả từ một thương hiệu duy nhất. Có ít hơn hai nameserver điểm bằng không trên kiểm tra này và được coi là nghiêm trọng cao, vì đó là điểm lỗi đơn không được giảm nhẹ cho toàn bộ tên miền.
Bản ghi SOA. Mỗi vùng DNS có chính xác một bản ghi Start of Authority. Nó đặt tên nameserver chính và liên hệ quản trị, mang số serial tăng dần với mỗi thay đổi, và — phần quan trọng với doanh nghiệp của bạn — giữ bốn bộ đếm thời gian:
- Refresh — tần suất nameserver thứ cấp kiểm tra lại chính cho các thay đổi. Phạm vi tốt: khoảng 1 đến 24 giờ (3,600–86,400 giây).
- Retry — bao lâu để thử lại nếu refresh thất bại. Phạm vi tốt: khoảng 5 đến 60 phút (300–3,600 giây).
- Expire — bao lâu thứ cấp tiếp tục phục vụ bản ghi của bạn nếu không thể tiếp cận chính. Phạm vi tốt: khoảng 1 đến 4 tuần (604,800–2,419,200 giây).
- Minimum TTL — mức sàn cho bao lâu các câu trả lời được lưu vào bộ nhớ đệm. Nên là giá trị dương hợp lý; 300 giây là lựa chọn phổ biến.
“Tốt” trông như thế nào: SOA tồn tại, có liên hệ quản trị hợp lệ, và mang bộ đếm thời gian trong những phạm vi đó. Các giá trị ngoài phạm vi không chết người — nhưng chúng hoặc làm chậm thay đổi của bạn (bộ đếm thời gian quá dài) hoặc tải nameserver của bạn không cần thiết (quá ngắn).
Cách sửa (miễn phí, ~15 phút)
Phần này dành cho ai quản lý tên miền hoặc DNS của bạn — nếu không phải bạn, chuyển phần này cho họ. Bản sửa miễn phí; chúng tôi chỉ tính phí để theo dõi rằng nó vẫn được sửa.
Bước 1 — Đảm bảo bạn có ít nhất hai nameserver trên cơ sở hạ tầng đa dạng.
- Kiểm tra những gì bạn có hôm nay. Chạy
dig NS yourdomain.com(hoặc dùng bất kỳ công cụ “DNS lookup” web nào) và đọc ra các nameserver. Hai hoặc nhiều hơn là mức tối thiểu. - Nếu bạn chỉ có một, hoặc cả hai đang trên một host nhỏ đơn lẻ, di chuyển DNS đến nhà cung cấp cung cấp sự dự phòng theo mặc định. Hầu như mọi nhà cung cấp nghiêm túc làm vậy:
- Cloudflare — tự động gán hai nameserver lan rộng qua mạng Anycast toàn cầu khi bạn thêm tên miền.
- AWS Route 53 — mỗi hosted zone nhận bốn nameserver qua các mạng Route 53 riêng biệt.
- Google Cloud DNS / Microsoft 365 / Azure DNS — tương tự cung cấp nhiều nameserver trên cơ sở hạ tầng độc lập.
- Để chuyển đổi, đặt nameserver của tên miền tại registrar (nơi bạn mua tên miền) thành những cái nhà cung cấp DNS mới của bạn cung cấp. Thay đổi này có thể mất 24–48 giờ để lan truyền đầy đủ.
- Để đảm bảo đầy đủ hơn, doanh nghiệp lớn hơn hoặc rủi ro cao hơn có thể chạy DNS thứ cấp từ nhà cung cấp độc lập thứ hai. Với hầu hết doanh nghiệp nhỏ đây là tùy chọn — một nhà cung cấp uy tín duy nhất đã cho bạn sự dự phòng liên mạng thật.
Bước 2 — Kiểm tra (và nếu cần, sửa) bộ đếm thời gian SOA.
- Chạy
dig SOA yourdomain.comvà đọc ra các giá trị refresh, retry, expire và minimum-TTL. - So sánh chúng với các phạm vi ở trên. Trong đại đa số trường hợp nhà cung cấp DNS của bạn đã đặt mặc định hợp lý và không có gì cần làm.
- Nếu giá trị nằm ngoài phạm vi, sửa nó nơi DNS của bạn được host:
- Trên nhà cung cấp được quản lý (Cloudflare, Route 53, Google, Azure) SOA phần lớn được xử lý cho bạn; bạn thường điều chỉnh nó qua cài đặt DNS của nhà cung cấp hoặc hỗ trợ thay vì chỉnh sửa bằng tay.
- Trên nameserver tự chạy (BIND, PowerDNS) chỉnh sửa dòng SOA trong file zone trực tiếp và reload zone — nhớ tăng số serial để thứ cấp nhận thay đổi.
- Sau bất kỳ thay đổi nào, chạy lại tra cứu để xác nhận danh sách nameserver và bộ đếm thời gian SOA trông đúng.
Các lỗi phổ biến
- Coi “hai tên” là “hai mạng.” Hai tên nameserver phân giải thành cùng một máy hoặc rack là điểm lỗi đơn giả trang. Điều quan trọng là các đường mạng độc lập, không phải số lượng tên.
- Giả sử nhiều hơn luôn tốt hơn, không có sự đa dạng. Năm nameserver tất cả trên một host mỏng manh không an toàn hơn một cái. Đa dạng đánh bại số lượng.
- Đặt bộ đếm thời gian quá tích cực. Hạ SOA refresh hoặc minimum-TTL xuống “làm thay đổi ngay lập tức” chỉ hammering nameserver và có thể làm sự cố tệ hơn, với ít lợi ích thực tế. Mặc định hợp lý đã cân bằng tốc độ với tải.
- Đặt
expirequá thấp. Nếu thứ cấp ngừng phục vụ zone của bạn quá sớm trong sự cố chính, sự cố có thể phục hồi trở thành sự cố hoàn toàn. Giữ expire trong phạm vi tuần. - Chỉnh sửa zone bằng tay và quên số serial. Trên nameserver tự chạy, thứ cấp chỉ nhận thay đổi khi serial SOA tăng. Thay đổi bản ghi nhưng để serial một mình và “bản sửa” của bạn không bao giờ lan truyền.
- Để DNS trên mặc định cơ bản của registrar tên miền. DNS tích hợp sẵn của một số registrar là thiết lập đơn lẻ, tối thiểu. Di chuyển DNS đến nhà cung cấp thật thường cho bạn sự dự phòng và bộ đếm thời gian SOA hợp lý trong một lần di chuyển.
Kết luận
Nameserver và bản ghi SOA của chúng là nền tảng mà mọi thứ khác ngồi trên. Hai nameserver trên các mạng thực sự riêng biệt có nghĩa là một lỗi đơn không thể đưa toàn bộ doanh nghiệp của bạn ngoại tuyến cùng một lúc; bộ đếm thời gian SOA hợp lý có nghĩa là các thay đổi bạn thực hiện thực sự đến với thế giới kịp thời. Cả hai đều miễn phí để làm đúng, cả hai thường đã ở trạng thái tốt ngay khi bạn ở trên nhà cung cấp DNS đúng, và cả hai đáng kiểm tra nhanh hai phút — vì ngày chúng quan trọng là ngày bạn không thể chịu đựng chúng sai.
FAQ
Tôi không rành kỹ thuật — đây có phải thứ tôi có thể tự sắp xếp không?
Bạn không cần hiểu nội bộ DNS. Đa dạng nameserver thường được xử lý cho bạn ngay khi bạn đặt tên miền trên nhà cung cấp DNS thật (Cloudflare, AWS Route 53, host của bạn) — họ cho bạn hai hoặc nhiều nameserver trên mạng của họ tự động. Bộ đếm thời gian SOA thường được đặt hợp lý theo mặc định cũng vậy. Việc chủ yếu là kiểm tra những gì bạn có và, nếu bạn đang trên một thiết lập đơn mỏng manh, chuyển sang nhà cung cấp cho bạn sự dự phòng. Chuyển phần kỹ thuật bên dưới cho web người hoặc nhà cung cấp IT — bản sửa miễn phí.
Sự khác biệt giữa hai thứ trang này kiểm tra là gì?
Hai phần liên quan của cùng một nền tảng. Cái đầu tiên — đa dạng nameserver — là về khả năng phục hồi: bạn có ít nhất hai nameserver không, và chúng có ngồi trên các phần mạng thực sự khác nhau để một lỗi không thể hạ gục tất cả cùng lúc? Cái thứ hai — bản ghi SOA — là về thời gian: nó giữ các giá trị đồng hồ nói với phần còn lại của internet bao lâu để tin tưởng và lưu vào bộ nhớ đệm các câu trả lời DNS của bạn. Một là 'đừng đặt tất cả trứng vào một giỏ'; cái kia là 'đặt bộ đếm thời gian để các thay đổi chảy qua sạch.'
Tôi có hai nameserver từ cùng một công ty — vậy có đủ không?
Thường là có, nếu công ty đó là nhà cung cấp DNS nghiêm túc. Các nhà cung cấp lớn như Cloudflare, Google và AWS chạy nameserver của họ trên nhiều mạng và vị trí riêng biệt trên khắp thế giới, vì vậy hai tên từ họ thực sự ngồi trên cơ sở hạ tầng độc lập — đó là sự dự phòng thật. Trường hợp rủi ro là một host nhỏ đơn lẻ nơi cả hai 'nameserver' thực sự là cùng một máy hoặc cùng một rack. Nếu bạn muốn bảo đảm đầy đủ, bạn có thể chạy nameserver từ hai nhà cung cấp độc lập, nhưng với hầu hết doanh nghiệp nhỏ một nhà cung cấp DNS uy tín đơn lẻ là đủ.
Giá trị SOA 'refresh' hoặc 'expire' thực sự làm gì cho doanh nghiệp của tôi?
Đó là các bộ đếm thời gian nói với các máy chủ DNS khác bao lâu cần chờ trước khi kiểm tra lại bản ghi của bạn, và bao lâu tiếp tục phục vụ chúng nếu không thể tiếp cận bạn. Đặt quá cao và thay đổi bạn thực hiện — IP máy chủ mới, nhà cung cấp email mới, chuyển hướng khẩn cấp — mất nhiều thời gian hơn để đến với mọi người. Đặt quá thấp và nameserver của bạn xử lý lưu lượng thêm không cần thiết. Mặc định hợp lý (refresh đo bằng giờ, expire bằng tuần) giữ các thay đổi chảy kịp thời trong khi vẫn mạnh mẽ trong sự cố. Hầu hết nhà cung cấp đặt những thứ này đúng ngay khi sử dụng.
Điều này có thay đổi điểm của tôi không, và bao nhiêu?
Có, cả hai phần tính vào điểm DNS của bạn. Có ít hơn hai nameserver được coi là khoảng cách nghiêm trọng vì là điểm lỗi đơn cho toàn bộ sự hiện diện trực tuyến của bạn. SOA được cấu hình sai là vấn đề vừa phải hơn — nó không đưa bạn ngoại tuyến, nhưng nó làm chậm khả năng phản ứng của bạn khi có thứ gì đó thay đổi. Cả hai đều miễn phí để sửa và, với hầu hết doanh nghiệp, đã ở trạng thái tốt khi bạn ở trên nhà cung cấp DNS đúng.
Có điều khoản gì không — tôi có phải trả tiền để sửa điều này không?
Không. Nhận nameserver dự phòng và bộ đếm thời gian SOA hợp lý là miễn phí ở mọi nhà cung cấp DNS lớn, và các bước bên dưới là tất cả những gì bạn cần. Chúng tôi chỉ tính phí nếu sau này bạn muốn chúng tôi tiếp tục theo dõi tên miền và cảnh báo bạn nếu sự dự phòng bao giờ giảm xuống điểm lỗi đơn hoặc bộ đếm thời gian trôi dạt.