DNS - Bất kỳ cách nào để buộc một máy chủ tên cập nhật bản ghi của một tên miền?


13

Tôi đang làm một số công việc trên một số tên miền. Tôi đang cập nhật chúng. Bằng cách sử dụng digtôi có thể truy vấn máy chủ tên của chúng tôi và tôi có thể thấy rằng tên chính xác đã được cập nhật. Tuy nhiên, bộ nhớ cache dns văn phòng của chúng tôi vẫn hiển thị tên cũ. Hôm qua tôi đã đặt TTL xuống còn 10 phút, vì vậy tôi không phải đợi lâu. Tuy nhiên, có cách nào để lừa bộ nhớ cache dns của văn phòng để cập nhật không? Bất kỳ mẹo nhỏ lén lút nào tôi có thể làm để làm cho mọi thứ dễ dàng hơn?

CẬP NHẬT Giả sử tôi không có quyền truy cập vào máy chủ và không thể khởi động lại nó? Tôi có thể làm gì khác không?


Máy chủ DNS của bạn chạy trên nền tảng nào? UNIX, Linux, Windows ..?
RainyRat

Hệ điều hành nào là máy chủ của văn phòng đang chạy? Điều đó sẽ tạo ra sự khác biệt trong cách bạn sẽ xóa sạch bộ đệm.
Bart B

2
Google cho phép bạn xóa bộ đệm DNS: developers.google.com/speed/public-dns/cache
Nehal J Wani

Câu trả lời:


16

Giả sử máy chủ DNS của bạn ở trên PC chứ không phải bộ định tuyến, v.v .:

Xóa bộ nhớ cache Linux:

/etc/init.d/nscd restart

Hoặc cho các distro không có nscd

/etc/init.d/named restart

Xóa bộ nhớ cache của máy khách Windows cho từng máy:

ipconfig /flushdns

Xóa bộ nhớ cache của máy chủ Windows cho máy chủ văn phòng (nhờ ericmayo đã sửa):

  1. Điều hướng đến Công cụ quản trị viên
  2. mở rộng đối tượng máy chủ
  3. nhấp chuột phải vào các đối tượng lưu trữ
  4. chọn xóa bộ nhớ cache

Mac (có thể?!):

dscacheutil -flushcache

Nếu bạn có GUI web vv cho bộ định tuyến, sẽ có một tùy chọn ở đó ở đâu đó.

Xóa bộ nhớ cache đa nền tảng như trên

Giới thiệu về DNS và bộ nhớ đệm


ipconfig / flushdns không xóa bộ đệm DNS của máy chủ DNS Windows; nó chỉ xóa bộ nhớ cache của khách hàng. Để xóa bộ đệm máy chủ DNS của Windows, hãy mở DNS trong Công cụ quản trị viên, mở rộng đối tượng máy chủ, nhấp chuột phải vào các đối tượng được lưu trong bộ nhớ cache và chọn xóa bộ đệm. nscd không có trên distro của tôi. Trong trường hợp đó, chỉ cần killall đặt tên và khởi động lại nó; thường là /etc/rc.d/rc.bind bắt đầu
Kilo

Đối với mac: dscacheutil -flushcachexóa bộ đệm cục bộ trong hệ điều hành, không phải máy chủ tên liên kết. rndc flushsẽ xóa máy chủ tên liên kết trên máy Mac, điều này sẽ ảnh hưởng đến tất cả các máy tính sử dụng máy chủ tên đó.
Matt Connolly

10

Nếu bạn đang chạy BIND như một trình giải quyết cho văn phòng của bạn - tức là. không chuyển tiếp cho người giải quyết khác.

Xóa mọi thứ trong bộ đệm:

rndc flush

Xóa một hồ sơ cụ thể:

rndc flushname example.com

Nếu bạn đang chuyển tiếp thì bạn sẽ cảm thấy thoải mái với bộ đệm của người chuyển tiếp.


4

Với DNS DNS, chỉ cần khởi động lại dịch vụ sẽ xóa bộ đệm. Đáng để thử trên máy chủ văn phòng của bạn.

JR


3

Nếu bạn sử dụng Windows, bạn có thể sử dụng nltest.

  /DSREGDNS - Force registration of all DC-specific DNS records
  /DSDEREGDNS:<DnsHostName> - Deregister DC-specific DNS records for specified DC
      /DOM:<DnsDomainName> /DOMGUID:<DomainGuid> /DSAGUID:<DsaGuid>
  /DSQUERYDNS - Query the status of the last update for all DC-specific DNS records

Và nếu bạn sử dụng THẮNG, nbtstat.


0

Nếu bạn đang sử dụng Bind9 làm máy chủ dns của mình, hãy khởi động lại dịch vụ

sudo dịch vụ bind9 khởi động lại


Điều này không đúng với tất cả các bản phát hành; Sử dụng RH / CentOS service named restart, như Andy ám chỉ ở trên. Đây sẽ là một câu trả lời hữu ích hơn nếu bạn phát hiện ra bản phân phối nào đúng (tôi nghi ngờ đó là " Debian và các dẫn xuất ", nhưng tôi không phải là chuyên gia Debian) và đã thêm nó vào.
MadHatter

@MadHatter ... ngoài ra, nó sẽ phụ thuộc vào "trạng thái" của bind, nếu nó được sử dụng như một máy chủ có thẩm quyền hoặc đệ quy. Theo tôi, như hiện tại, câu trả lời này tự nó không có ý nghĩa nhiều lắm.
gf_
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.