Global WKS (Well Known Service) Lookup
Bản ghi WKS (Well Known Service) là một loại bản ghi DNS cực kỳ lỗi thời (deprecated) và cứng nhắc, được ra mắt trong bản dự thảo đầu tiên của Domain Name System thuộc bộ RFC 1035. Mục tiêu kỹ thuật cốt lõi của nó là công khai ánh xạ (map) một địa chỉ IP nhất định vào một danh sách các giao thức internet được hỗ trợ—đặc biệt là TCP hoặc UDP—đồng thời công khai tuyên bố các port mở tương ứng của chúng. Ví dụ, một admin có thể xài một bản ghi WKS để loan tin rằng một server đặt tại IP 192.168.1.100 đang chủ động hỗ trợ SMTP trên port 25 và FTP trên port 21.
Tối ưu hóa tài nguyên Pre-Connection
Trong thời kỳ đồ đá của mạng máy tính, việc thiết lập một TCP handshake qua các kết nối ARPANET băng thông hẹp, latency cao là một hành động đắt đỏ về tính toán máy móc và chậm chạp đến khó tin. Bản ghi WKS được thiết kế ra như một mẹo tối ưu hiệu suất (efficiency hack). Nó cho phép một ứng dụng client chỉ việc query vào lớp DNS chạy bằng UDP gọn nhẹ để nhanh chóng xác thực xem server từ xa có thực sự đang hỗ trợ một dịch vụ nhất định nào đó hay không, ngay trước khi thử route traffic sang server đó. Lỡ như một user có đang thử khởi tạo một session Telnet, thế nhưng bản ghi WKS của domain lại không liệt kê đích danh Port 23 trong hệ thống bitmap của nó, thì phần mềm client ở máy local có quyền hủy ngay nỗ lực kết nối đó. Cách làm này giúp client không bị treo cứng lại trong lúc dài cổ đợi chờ lỗi timeout mạng, tiết kiệm được băng thông (bandwidth) vô giá dọc theo các tuyến cáp xuyên đại dương.
Nút thắt cổ chai Bitmap
Tuy nhiên, tử huyệt của bản ghi WKS lại nằm chính trong cấu trúc dữ liệu nền tảng của nó. Đoạn payload bị mã hóa theo dạng chuỗi bitmap nhị phân thô cứng, nơi mỗi bit (bit) sẽ ứng với một số port chuyên biệt được ấn định bởi tổ chức Internet Assigned Numbers Authority (IANA). Khi mức độ phức tạp của các dịch vụ internet ngày càng bùng nổ, định dạng này trở nên cồng kềnh khó tả và gần như là bất khả thi để các chuyên viên admin quản lý thủ công nổi. Bất kỳ khi nào một sysadmin quyết định cài đặt thêm một dịch vụ mới hay đóng bớt một port, họ sẽ lại phải tạo lại (regenerate) chuỗi bitmap đó từ đầu, update dãy số serial của zone, rồi mỏi mòn chờ đợi DNS lan truyền (propagate) trên phạm vi toàn cầu chỉ để mong muốn phản ánh lại được trạng thái chính xác của con server. Sự rườm rà trong khối lượng công việc quản trị (administrative overhead) này đã đè bẹp lợi ích từ việc tiết kiệm băng thông.
Lỗ hổng bảo mật và sự thay thế bởi SRV
Khá giống bản ghi HINFO, giao thức WKS cũng mù quáng hoàn toàn trước khía cạnh an ninh mạng. Cứ thế lôi nguyên một danh sách thuần chữ (plain-text list) có tính tổng hợp đầy đủ của từng port đang mở trên server để phơi bày trực tiếp lên lớp DNS công cộng thì chẳng khác gì đưa cho hội hacker một bản đồ dò quét (reconnaissance map) đã được scan sẵn đầy đủ tính năng. Việc này khiến hacker hoàn toàn chả cần đụng đến những bộ quét port ồn ào và dễ bị phát hiện như Nmap làm gì cho mệt. Hiểu rõ những sai lầm chết người về mặt kiến trúc lẫn bảo mật này, IETF đã chính thức kết liễu số phận của bản ghi WKS, tuyên bố loại bỏ nó (obsolete) bằng tài liệu RFC 1123. Nhu cầu ánh xạ các dịch vụ và số port với domain name về sau đã được sang tên đổi chủ hoàn toàn cho loại bản ghi SRV (Service) linh hoạt hơn. Hệ thống các bản ghi SRV đã mang đến tính uyển chuyển vô cực, cho phép tự do gán port linh hoạt (dynamic), đánh trọng số load-balancing (weight), kèm khả năng failover theo priority mà chẳng cần phơi bày ra toàn bộ profile port nền tảng của hệ thống mục tiêu. Các phần mềm DNS thời nay như BIND9 hay CoreDNS sẽ làm lơ hoàn toàn bất cứ thứ gì mang định dạng WKS.