Tệp trình điều khiển Windows \ etc \ services để làm gì?


8

Thông thường có tệp "dịch vụ" trong C: \ Windows \ System32 \ driver \ etc, nó liệt kê các dịch vụ đang chạy và cổng sẽ được sử dụng.

Tuy nhiên, từ "dịch vụ" nghĩa là gì ở đây? Đây không phải là "Dịch vụ Windows", có thể thấy khi bạn chạy "services.msc". 2 danh sách như vậy không kiểm đếm.

Và, nội dung tệp "dịch vụ" này có thể bị lỗi thời - không ai cập nhật nó: các chương trình vẫn có thể giao tiếp qua một số cổng mà không cập nhật tệp "dịch vụ", nếu chúng có thỏa thuận; Ngoài ra, nếu một số chương trình không chạy, một số cổng không được thực hiện, "tệp dịch vụ Windows" cũng không được cập nhật.

Vậy tập tin này để làm gì?

Bất cứ nơi nào tôi có thể tìm thấy một số tài liệu? Có thể do tên tệp phổ biến, tôi đã tìm kiếm trên internet nhưng hầu hết các liên kết là về "Dịch vụ Windows" ... không phải là "Tệp dịch vụ Windows" này ...

BIÊN TẬP:

Một câu hỏi nữa, vì tệp "dịch vụ" có thể bị lỗi thời, có cách nào để liệt kê tất cả các "dịch vụ" đang hoạt động không?

Câu trả lời:


7

Tệp này cho biết các dịch vụ được viết bởi Microsoft nên sử dụng cổng nào, cũng như các tệp muốn sử dụng API Windows và / hoặc tệp đó để biến tên dịch vụ thành cổng. Các tên dịch vụ này được xác định bởi IETF.

Dưới đây là một ví dụ về các hướng dẫn để thay đổi một cổng để nhường chỗ cho một máy chủ SMTP khác.

Và đây là giải thích thêm về tên dịch vụ:

tên dịch vụ [trong]

Chuỗi kết thúc NULL chứa tên dịch vụ hoặc cổng đích của máy chủ lưu trữ để kết nối với IPv4 hoặc IPv6.

Tên dịch vụ là bí danh chuỗi cho số cổng. Ví dụ, http http là một bí danh cho cổng 80 được xác định bởi Lực lượng đặc nhiệm kỹ thuật Internet (IETF) là cổng mặc định được sử dụng bởi các máy chủ web cho giao thức HTTP. Các giá trị có thể cho tham số tên dịch vụ khi số cổng không được chỉ định được liệt kê trong tệp sau: %WINDIR%\system32\drivers\etc\services

- Hàm MSDN - Winsock - WSAConnectByName


2
Cụ thể, tệp dịch vụ sao lưu [getservbyname](http://msdn.microsoft.com/en-us/library/windows/desktop/ms738538(v=vs.85).aspx)API dịch tên dịch vụ thành số ổ cắm.
Richard

@Richard: Có lẽ, nhưng nó không đề cập đến services.
Tamara Wijsman

Vì vậy, đây là một khái niệm Windows Socket? xin lỗi tôi không quen ở đây ... có phải Windows Socket là giao thức thấp hơn HTTP, TCP / IP, FTP, do đó định nghĩa được thực hiện ở cấp Windows Socket có thể điều chỉnh hành vi ở cấp HTTP, TCP / IP hoặc FTP không?
vận động viên

@athos: Không, nó không có giao thức. Trước tiên, các dịch vụ Windows chỉ dịch tên dịch vụ (ví dụ http) sang cổng dịch vụ (ví dụ: 80for http), sau đó cung cấp cổng dịch vụ đó cho giao thức liên quan (TCP / IP).
Tamara Wijsman

4
Sidenote: Việc đặt tên, cách sử dụng và định dạng của tệp này đến từ Unix nơi chứa tệp /etc/services. Microsoft đã áp dụng điều này khi họ bắt đầu thay thế giao thức mạng độc quyền Netbeui của họ bằng các giao thức TCP / IP nguồn mở đang trở nên quan trọng hơn. Xem kuro5hin.org/story/2001/6/19/05641/7357
RedGrittyBrick
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.