Tôi thực sự cần phải biết điều này cho một máy chủ linux, nhưng vì nó cũng áp dụng cho các hệ điều hành máy khách, tôi đã tìm ra câu hỏi nên được đặt ra ở đây thay vì lỗi máy chủ.
Tôi thực sự cần phải biết điều này cho một máy chủ linux, nhưng vì nó cũng áp dụng cho các hệ điều hành máy khách, tôi đã tìm ra câu hỏi nên được đặt ra ở đây thay vì lỗi máy chủ.
Câu trả lời:
Theo các câu trả lời cho bài đăng này vào danh sách gửi thư linux-net ,
Tất nhiên, việc liên kết số lượng lớn bí danh với một thiết bị sẽ áp đặt các yêu cầu về bộ nhớ và có thể có ý nghĩa về hiệu suất, do đó, phần cứng của bạn có thể giới hạn số lượng bí danh mà bạn có thể thêm vào, ngay cả khi hạt nhân không có.
eth0:0
) hay không, nó vẫn là bí danh. Cấp, các tác giả của ip(8)
trang man chọn không sử dụng thuật ngữ "bí danh" vì nó coi tất cả các địa chỉ là như nhau, gần như toàn bộ phần còn lại của thế giới đồng ý rằng việc gán nhiều địa chỉ cho cùng một giao diện được gọi là "bí danh IP".
Nhiều hơn bạn có thể cần. Sử dụng ip addr add
để thêm địa chỉ vào một giao diện.
Tối đa sẽ là 4.294.967.294 địa chỉ IP (giả sử bạn đang nói về IPV4, bạn có đủ RAM và chúng tôi lấy ra một địa chỉ cho địa chỉ quảng bá và một cho địa chỉ mạng).
Hạt nhân linux có một tính năng gọi là AnyIP , cho phép bạn trả lời cho một khối địa chỉ IPv4 hoặc IPv6 liền kề thông qua giao diện loopback linux của bạn với chi phí rất thấp trong DRAM / CPU.
Chẳng hạn, giả sử tôi muốn máy linux của mình trả lời bất kỳ địa chỉ nào trong 10.7.0.0/16:
ip -4 route add local 10.7.0.0/16 dev lo
Xin chúc mừng, bây giờ bạn trả lời cho một số lượng lớn địa chỉ (hơn 65.000 trong ví dụ này) và mức tiêu thụ RAM của bạn thực tế không có gì từ bài tập này. Về khả năng mở rộng, giải pháp này tốt hơn nhiều so với việc thêm các bí danh giao diện riêng lẻ trên eth0 cho tất cả các IP bạn muốn trả lời.
Không có giới hạn cho bao nhiêu địa chỉ bạn có thể trả lời như thế này.
ip addr add
có thể liên kết các địa chỉ với một thiết bị duy nhất.