Trợ giúp máy chủ OpenVPN: mạng cộng mặt nạ, không bao giờ là CIDR
Trợ giúp máy chủ IPv4 nhận một mạng đã căn chỉnh và mặt nạ dạng chấm, không phải hậu tố CIDR. Kiểm tra dải, xác nhận nhóm trong nhật ký, rồi thay đổi kích thước một cách an toàn.
Một dòng máy chủ trộn hậu tố CIDR với mặt nạ dạng chấm sẽ dừng daemon trước cả khi nó mở một cổng. Trợ giúp server cho IPv4 muốn hai đối số riêng biệt: một địa chỉ mạng đã căn chỉnh, rồi đến mặt nạ mạng ở dạng chấm. Mọi thứ khác trên dòng đó là suy đoán, và chính trong suy đoán là nơi kích thước nhóm và mặt nạ của máy khách sai đi.
Hai đối số mà trợ giúp chấp nhận
Viết mạng trước rồi đến mặt nạ, không gắn gì vào địa chỉ:
server 10.72.16.0 255.255.240.0Đây là dạng cho /20. Dòng bên dưới là lỗi, và nó thất bại khi phân tích tùy chọn, không phải khi chạy:
server 10.72.16.0/20 255.255.240.0Hãy tách hai ý khi gỡ lỗi việc này. Độ dài tiền tố và mặt nạ dạng chấm mô tả cùng một dải, nhưng trợ giúp không nhận cả hai cùng lúc, và dòng bị từ chối tạo ra lỗi tùy chọn nêu tên chỉ thị chứ không phải phép tính.
Căn chỉnh mạng trước khi gõ mặt nạ
Địa chỉ đầu tiên là địa chỉ mạng của dải, không phải một địa chỉ máy khách thuận tiện bên trong nó. Với /20 dải chạy từ 10.72.16.0 đến 10.72.31.255, và chỉ địa chỉ đầu tiên trong số đó là đối số mạng hợp lệ. /21 dùng 255.255.248.0 và bao từ 10.72.16.0 đến 10.72.23.255, nên dòng của nó là server 10.72.16.0 255.255.248.0.
Thay đổi tiền tố chỉ thay đổi dải và không gì khác. Nó không thay đổi số địa chỉ một máy khách nhận được, vì đó là thuộc tính của tô pô, không phải của mặt nạ trên dòng này.
Xác nhận nhóm từ phía máy chủ
Khởi động phiên bản ở tiền cảnh với ghi nhật ký chi tiết và đọc những dòng mà trợ giúp phát ra. Nhóm mà nó đã dựng được in khi khởi động, điều này đáng tin hơn tự tính phép tính bằng tay:
openvpn --config /etc/openvpn/server.conf --verb 4 --dev tun9 --port 1195Tìm bản tóm tắt nhóm gần phần đầu của đầu ra. Nó liệt kê dải mà trợ giúp đã đặt trước, và nếu dải đó không khớp với ý định của bạn, các đối số trên dòng là sai, bất kể phép tính mặt nạ nói gì.
Sau đó kết nối một máy khách và tìm dòng ghi lại địa chỉ được cấp cho nó. Địa chỉ duy nhất đó, bên cạnh dải nhóm, cho bạn biết máy khách đã hạ cánh bên trong khối được đặt trước hay ở nơi bạn không ngờ tới. Nếu hai điều không khớp, hãy sửa các đối số chứ không phải máy khách. Nếu chúng khớp và máy khách vẫn không chạm tới được gì, thì nhóm chưa bao giờ là vấn đề.
Đọc mặt nạ của máy khách với tô pô trong đầu
Một máy khách hiển thị /30 trên giao diện đường hầm của nó không phải bằng chứng của một nhóm hỏng. Với địa chỉ hóa điểm-điểm, mỗi máy khách nhận một khối nhỏ và mặt nạ giao diện của nó mô tả khối đó, trong khi nhóm của máy chủ bao phủ toàn bộ. Với tô pô mạng con, mặt nạ của máy khách lại khớp với mặt nạ của nhóm. Vì vậy chỉ riêng mặt nạ cho biết tô pô nào đang được dùng, chứ không cho biết nhóm có được viết đúng hay không.
Kiểm tra tô pô đã cấu hình và địa chỉ đã cấp cùng nhau trước khi kết luận:
ip -4 addr show tun0Nếu địa chỉ nằm trong nhóm và mặt nạ hẹp hơn nhóm, đó là tô pô đang làm việc của nó. Nếu địa chỉ nằm ngoài nhóm, nhóm sai, và không cuộc kiểm tra nào phía máy khách sửa được điều đó.
Thay đổi một nhóm đang chạy
Chọn một dải không chồng lấn với nhóm hiện tại, mạng LAN, hay bất kỳ tuyến nào đã được đẩy tới máy khách. Chồng lấn là sự cố tồn tại qua lần khởi động lại và sau đó, vài ngày sau, xuất hiện như một site không thể tới được từ một hướng.
Thay đổi dòng, khởi động lại và đọc lại nhóm khởi động trước khi cho người dùng quay lại. Nếu dải mới đụng độ với thứ gì đó, cùng đầu ra khởi động sẽ cho thấy ngay, và việc hoàn nguyên là sửa một dòng cộng thêm một lần khởi động lại nữa.
Giữ dải cũ được đặt trước thêm một thời gian sau khi thay đổi. Những máy khách kết nối muộn vẫn có thể giữ địa chỉ từ nhóm trước, và một dải mới dùng lại những địa chỉ đó tạo ra các cấp phát trùng lặp trông như sự cố định tuyến. Hướng dẫn OpenVPN 2.6 ghi lại các đối số của trợ giúp và phần mở rộng của nó, điều đáng đọc trước khi cho rằng một chỉ thị dùng cùng ký pháp như hàng xóm của nó.