Điểm:1

Chuyển tiếp proxy ngược

lá cờ sa

Bạn có thể giúp tôi?

sudo echo "1" > /proc/sys/net/ipv4/ip_forward
Sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination 1.1.1.1
Sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 2.2.2.2
sudo iptables -t nat -A POSTROUTING -j MASQUERADE

Tôi đang sử dụng các quy tắc iptables này để tạo máy chủ cân bằng tải. Tôi chỉ phân phối nội dung .mp4 và .mp3, nhưng các quy tắc này đang sử dụng băng thông máy chủ mà tôi đang sử dụng để thực hiện chuyển tiếp này thay vì băng thông máy chủ đích.

Làm sao tôi có thể giải quyết việc này? Người dùng phải sử dụng băng thông của máy chủ đích thay vì máy chủ chuyển hướng. Cảm ơn bạn.

Lester avatar
lá cờ fr
"Người dùng phải sử dụng băng thông của máy chủ đích thay vì máy chủ chuyển hướng" Tại sao bạn nghĩ điều này sẽ hiệu quả? Bạn đang gửi lưu lượng truy cập đến máy chủ proxy và thực hiện NAT, tất nhiên "băng thông của nó sẽ được sử dụng". Khám phá một phương pháp khác, chẳng hạn như sử dụng proxy HTTP có chuyển hướng.
Makoa avatar
lá cờ sa
Có, một số băng thông sẽ được sử dụng nhưng máy chủ chuyển hướng đang bị quá tải vì dường như máy chủ đang sử dụng các tệp .mp4 và .mp3 này thay vì chỉ chuyển hướng người dùng đến máy chủ đích. Máy chủ đích sẽ cung cấp các tệp đó cho người dùng thay vì chuyển hướng. Không thể làm điều này với iptables?
vidarlo avatar
lá cờ ar
Không, bạn không thể. Khi bạn thực hiện định tuyến, lưu lượng truy cập sẽ đi qua bạn. Điều đó nói rằng, định tuyến trong nhiều trường hợp rẻ hơn so với đọc đĩa, do đó, có thể có một bộ định tuyến có khả năng xử lý lưu lượng. Ngày nay, bộ định tuyến 10G không phải là * mà * hiếm gặp.
Điểm:2
lá cờ ar

Làm sao tôi có thể giải quyết việc này? Người dùng phải sử dụng băng thông của máy chủ đích thay vì máy chủ chuyển hướng. Cảm ơn bạn.

Nói chung có một số cách:

  1. Sử dụng DNS Round Robin. Tất cả các máy chủ chia sẻ cùng một tên, nhưng trên các IP khác nhau. Khách hàng sẽ chọn một máy chủ ngẫu nhiên.
  2. Sử dụng chuyển hướng để gửi người dùng đến một máy chủ thích hợp.
  3. Sử dụng Anycast. Tất cả các máy chủ có cùng một IP. Do cách thức hoạt động của định tuyến, người dùng thường sẽ kết nối với một địa phương.

Round Robin DNS và chuyển hướng nói chung là thứ bạn có thể tự định cấu hình. Đối với anycast, bạn sẽ phải có khả năng tự thông báo BGP ở nhiều khu vực và liên quan đến bản thân với nhiều ISP trên khắp thế giới.

Một ý tưởng tuyệt vời khác là chỉ cần bỏ qua vấn đề và đặt một dịch vụ như Cloudflare hoặc Akami lên phía trước và để chúng xử lý cân bằng tải. Nếu bạn muốn kiểm soát nhiều hơn, bạn cũng có thể lưu trữ nội dung trong một giải pháp đám mây như Azure hoặc Google Cloud, nơi bạn ít phải lo lắng về tải để lấy nội dung từ bộ lưu trữ blob ở mức độ thấp hơn.


Quy tắc của bạn làm gì

Với các quy tắc của bạn, bạn viết lại đích đến của gói và gửi chúng đến một máy chủ khác. Trong phép cộng bạn hóa trang thành họ, để các máy chủ phụ trợ có vẻ như gói đến từ giao diện người dùng của bạn. Phần phụ trợ trả lời một cách có trách nhiệm, gửi gói trả lời trở lại giao diện người dùng của bạn, phần này tra cứu trong bảng nơi kết nối đó đến từ đó và gửi gói đến ứng dụng khách ban đầu. Máy chủ - thực sự là một bộ định tuyến, phải chạm vào các gói để viết lại các tiêu đề và tất cả các gói phải đi qua máy chủ đó.

Trong nhiều trường hợp, một thiết lập như vậy có thể có rất nhiều ý nghĩa. Việc định tuyến nhiều lưu lượng truy cập khá đơn giản và dễ dàng và mạnh mẽ để định cấu hình. Nó cho phép Tính sẵn sàng cao, trong đó bạn loại bỏ các máy chủ không phản hồi và đối với các tải không ở trạng thái, việc tăng dung lượng cực kỳ dễ dàng - miễn là bộ định tuyến của bạn có thể xử lý lượng lưu lượng truy cập.

Makoa avatar
lá cờ sa
Thật không may, những gì tôi đang tìm kiếm liên quan nhiều hơn đến iptables
vidarlo avatar
lá cờ ar
Sau đó, bạn đang sủa sai cây.
vidarlo avatar
lá cờ ar
@Makoa Tôi đã cập nhật câu trả lời để giải thích lý do tại sao nó hoạt động như vậy.
Makoa avatar
lá cờ sa
"Máy chủ - thực sự là một bộ định tuyến, phải chạm vào các gói để viết lại các tiêu đề và tất cả các gói phải đi qua máy chủ đó." - Điều này giải thích tại sao máy chủ chuyển hướng của tôi đang sử dụng rất nhiều băng thông, cảm ơn bạn rất nhiều

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.