Hai máy khách OpenVPN trên một máy chủ Linux: tuyến đường thuộc về ai?
Hai máy khách có thể chia sẻ một máy chủ nếu mỗi tiền tố có chủ sở hữu. Đi qua mục đích, các pool, cách đặt tên phiên bản và một phép thử dừng cho từng tunnel, theo đúng thứ tự đó.
Cả hai hồ sơ đều báo đã kết nối và một trong hai đang lặng lẽ mang lưu lượng dành cho cái kia. Hai máy khách trên một máy chủ là một bố cục được hỗ trợ; hai máy khách không có chủ sở hữu cho từng tiền tố thì không. Công việc ít nằm ở việc dựng tunnel thứ hai mà nhiều ở việc quyết định tiến trình nào được phép nhận tuyến nào. Đi theo thứ tự bên dưới và cấu hình sẽ suy ra từ các câu trả lời.
Bắt đầu bằng câu hỏi tunnel thứ hai dùng để làm gì
Ba tình huống trông giống hệt nhau trên dòng trạng thái và cần những thiết kế khác nhau. Phân chia theo đích gửi một tiền tố qua hồ sơ văn phòng và tiền tố kia qua hồ sơ phòng thí nghiệm, không bên nào nhận tuyến mặc định. Phân chia theo ứng dụng thường giữ một tunnel đầy đủ và điều hướng lưu lượng cụ thể bằng quy tắc chính sách. Chuyển đổi khi lỗi giữ đúng một tunnel hoạt động tại một thời điểm, nghĩa là cái thứ hai không được tự khởi động.
Viết trường hợp ra trước khi mở bất kỳ tệp cấu hình nào, vì câu trả lời đó quyết định mọi thứ sau đó.
Bố cục hỏng phổ biến nhất là hai tunnel đầy đủ cùng đẩy một tuyến mặc định, nơi bên kết nối sau cùng thắng và bên đầu tiên tiếp tục giả vờ. Trạng thái đó trông có chủ ý từ dòng trạng thái và lãng phí một ngày từ bảng định tuyến. Đặt tên trường hợp trước khiến nó trở nên bất khả thi chứ không chỉ khó xảy ra.
Xem các pool trước các tuyến
Hai máy chủ có thể dễ dàng cấp địa chỉ từ một dải riêng, và khi làm vậy, máy khách sẽ có hai giao diện trong cùng một tiền tố. Khi đó không đích nào có thể được gán cho giao diện theo địa chỉ, vì cả hai trông đều đúng như nhau. Đánh số lại một pool thay vì phát minh ra quy tắc để phá thế hòa.
Cũng kiểm tra mạng cục bộ, vì một LAN gia đình hoặc văn phòng chồng lấn với dải tunnel tạo ra cùng sự mơ hồ từ phía bên kia. So sánh địa chỉ trên máy chủ với cả hai cấu hình máy chủ trước khi đổ lỗi cho máy khách. Đổi pool trên máy chủ phòng thí nghiệm là một sửa chữa năm phút, trong khi lối vòng định tuyến theo chính sách cho một tiền tố chồng lấn là một khoản thuế vĩnh viễn cho mọi người đọc cấu hình sau này. Quyết định bạn muốn cái nào trước khi chọn nơi can thiệp.
Hai họ địa chỉ nghĩa là hai vòng kiểm tra này. Các pool IPv6 va chạm lặng lẽ như IPv4.
Cho mỗi hồ sơ một chủ sở hữu
Một phiên bản cho mỗi hồ sơ, một tệp cấu hình cho mỗi phiên bản và một tên nhận diện cặp đôi. Trong đóng gói kiểu Debian, tên sau dấu @ chọn tệp, vì thế hai hồ sơ chia sẻ tên phiên bản không bao giờ có thể cùng hoạt động. Xác nhận ánh xạ từ unit đã cài đặt, không phải từ hướng dẫn.
systemctl cat [email protected]
ip -4 addr showSau đó quyết định ai cài đặt các tuyến, đây là câu hỏi chính sách chứ không phải cú pháp.
Khi hai máy chủ đẩy các bộ không tương thích, hoặc thêm route-nopull và chỉ liệt kê những tiền tố mà mỗi hồ sơ cần, hoặc để một bên giữ tuyến mặc định của nó và điều hướng phần còn lại bằng một quy tắc chính sách. Hai tiến trình cùng cài đặt một tuyến mặc định kết thúc với một người thắng duy nhất và không ai nói được vì sao. Ngay khi hai tunnel mang lưu lượng của các nguồn khác nhau, một phản hồi có thể đi ra qua tunnel sai, và mẫu hình trụ được là một dấu kết nối được khôi phục trên các phản hồi và được điều hướng vào bảng của riêng nó. Giới hạn các dấu để gói tin mã hóa của chính các tunnel không bao giờ khớp với chúng.
Xác minh từng tunnel, sau đó dừng một cái
Khi cả hai đã lên, lấy ba số đọc: địa chỉ trên mỗi thiết bị tunnel, tuyến đến một máy chủ sống phía sau mỗi cái và con đường mà một đích bên ngoài cả hai sẽ đi. Một danh sách tuyến thông thường ngừng mô tả lần tra cứu cuối cùng ngay khi quy tắc vào cuộc, nên hãy hỏi nhân hệ điều hành nó thực sự sẽ chọn gì. Sau đó dừng một phiên bản và xem cái gì biến mất. Nếu dừng cái thứ nhất làm xáo trộn cái thứ hai, vẫn còn thứ gì đó được chia sẻ giữa chúng: một tuyến, một tên thiết bị hoặc một quy tắc tường lửa mà không ai tách ra.
ip rule show
ip route get 203.0.113.9Đưa hồ sơ đã dừng trở lại và lặp lại các kiểm tra tương tự, vì một tunnel chỉ hoạt động một lần sau khi khởi động lại và không bao giờ nữa là một lỗi vòng đời khoác áo định tuyến.
Ghi vào ghi chú triển khai hồ sơ nào sở hữu tiền tố nào, bên cạnh các dải pool. Hai tunnel là một bố cục có chủ ý, và người đọc tiếp theo cần thấy ranh giới trước khi chạm vào bất kỳ hồ sơ nào. Không có ghi chú đó, ranh giới được khám phá lại bởi người trực khi tiền tố dùng chung cuối cùng bị vỡ.