2009-06-15 50 views
5

Câu hỏi này có thể làm nổi bật sự thiếu hiểu biết về các nguyên tắc mạng về phía tôi, chứ không phải là vấn đề lập trình.Dns.GetHostEntry trả về nhiều địa chỉ IP

tôi đang làm một tra cứu trên một hostname sử dụng

Dns.GetHostEntry 

này trả về một IPHostEntry với tôi, trong đó có một tài sản AddressList mà là một mảng của IPAddress.

Tôi luôn nghĩ rằng có một bản đồ 1 đến 1 giữa tên máy chủ và IP, nhưng tôi thấy rằng trong một số trường hợp, tôi lấy lại một số IPAddress (es) cho cùng một máy chủ.

Điều này gây bất ngờ cho tôi.

Tôi không hiểu phần nào của độ phân giải tên miền?

Trả lời

7

Mọi hệ thống đều có thể có nhiều giao diện mạng và địa chỉ internet, nhưng chỉ có một tên. Ánh xạ chuyển tiếp từ tên đến địa chỉ sẽ trả về tất cả các địa chỉ được ánh xạ tới một tên cụ thể. Chúng tôi đã từng làm điều này với các máy chủ tệp của chúng tôi để các máy chủ sẽ không phải đi qua một ranh giới mạng khi truy cập các tệp và để truyền tải ra trên các NIC khác nhau. Các máy chủ tập tin sẽ được homed trên mỗi mạng con khác nhau của chúng tôi, có nhiều thẻ giao diện, mỗi với một địa chỉ mạng con khác nhau, nhưng cùng tên. Các máy chủ DNS trong khuôn viên trường vẫn được thiết lập theo cách này. Ngoài ra, bạn có thể có một tên ánh xạ tới nhiều hơn một hệ thống, cung cấp một số mức cân bằng tải thông qua DNS.

+1

Hệ thống có thể truy cập bằng nhiều tên - chỉ là vấn đề về các mục nhập DNS. Tuy nhiên, bạn nói đúng rằng bản thân máy thường có một tên duy nhất, nhưng điều đó không nhất thiết phải liên quan đến DNS. –

2

Một khả năng:
Một tên có thể giải quyết nhiều hơn một địa chỉ, điều này đôi khi được dùng cho round robin đó là một cách yếu của cân bằng tải máy chủ của bạn.

1

Theo như tôi biết, có thể cho phép nhiều địa chỉ IP cho một tên máy chủ để cho phép tính khả dụng cao. Đó là: khi một máy bị hỏng, một máy khác sẽ được sử dụng.

2

Bạn có thể có nhiều địa chỉ từ nhiều bộ điều hợp mạng hoặc nhiều giao thức. Thường thì bạn sẽ có địa chỉ IPV4 và IPV6 cho cùng một máy chủ.

8

Ánh xạ giữa các giao diện mạng vật lý, tên DNS và địa chỉ IP thực tế là tùy ý. Tuy nhiên, bạn nên phân biệt giữa các giao diện mạng (thường là bộ điều hợp Ethernet, bộ điều hợp Wifi, thiết bị mạng Bluetooth, vv) và mặt DNS của mọi thứ, chỉ đề cập đến tên và địa chỉ IP (không phải giao diện vật lý).

Dưới đây là một số sự kiện mà bạn có thể trộn và kết hợp:

  • một card mạng duy nhất có thể có 1 hoặc nhiều địa chỉ IP.
  • một tên DNS duy nhất có thể được giải quyết thành 1 hoặc nhiều địa chỉ IP.
  • một địa chỉ IP duy nhất có thể (và sẽ thường) xác định một máy
  • tên DNS mulitple thể được ánh xạ đến một địa chỉ IP duy nhất

xem xét cung cấp hosting: Họ sẽ có nhiều tên DNS trỏ đến các cùng - chia sẻ - máy chủ. Máy chủ đó có thể vì lý do đáng tin cậy được trang bị nhiều thẻ mạng, mỗi thẻ có một số địa chỉ IP.

Đối với PC, bạn thường sẽ nhận được nhiều hơn một địa chỉ IP nếu bạn truy vấn theo tên máy chủ, vì ngày nay bạn thường có ít nhất hai bộ điều hợp (wifi và ethernet) với địa chỉ IP riêng lẻ (chủ yếu là duy nhất). Trong kịch bản cân bằng tải tuy nhiên tất cả các loại ánh xạ thông minh và chuyển hướng (địa chỉ IP ảo và tương tự) có thể xảy ra.

Cả giao thức DNS và IP đều rất linh hoạt, tuy nhiên, điều này tất nhiên không nhất thiết làm cho chúng dễ hiểu hơn.

Các vấn đề liên quan