Tuyến tĩnh hay một giao thức định tuyến trên VPN site-to-site?
Độ biến động tiền tố, hành vi chuyển đổi và mức sẵn sàng vận hành quyết định. Cân nhắc cái giá để giữ mỗi lựa chọn đúng, rồi kiểm thử đường sự cố.
Cả hai lựa chọn đều chuyển gói giữa các site, nên quyết định không phải ở chỗ giao thức nào mới hơn, và kích thước đường hầm cũng không giải quyết được. Ba điều kiện mới quyết định: bao nhiêu tiền tố thay đổi và tần suất ra sao, thiết kế có cần chuyển đổi tự động giữa các đường hay không, và đội ngũ vận hành được bao nhiêu bộ máy lớp điều khiển vào lúc ba giờ sáng. Trả lời trung thực những điều đó và lựa chọn thường tự hình thành. Phần còn lại của bài này là cái giá của từng câu trả lời.
Ba điều kiện quyết định
Điều kiện thứ nhất là độ biến động. Một vài subnet ổn định với quyền sở hữu rõ ràng có thể được duy trì thủ công trong nhiều năm, và mỗi tuyến vẫn là một dòng mà ai đó có thể đọc và kiểm tra. Hàng chục tiền tố di chuyển theo việc dự án đến và đi là vấn đề khác, vì mỗi lần di chuyển phải đến được mọi thiết bị còn nhớ đường cũ.
Điều kiện thứ hai là hành vi khi có sự cố. Khi một đường dự phòng phải trở nên hoạt động mà không ai để ý, phải có thứ gì đó phát hiện sự cố và rút tuyến. Định tuyến tĩnh chỉ làm được điều đó qua giám sát hoặc cài đặt có điều kiện, và chỉ với những sự cố bạn đã nghĩ trước.
Điều kiện thứ ba là mức sẵn sàng cho một mặt phẳng điều khiển thứ hai. Một giao thức định tuyến thêm phiên, xác thực, bộ lọc và chính sách chọn, và mỗi thứ đó cần giám sát cùng một quy trình thay đổi. Đó là chi phí vận hành thường trực, không phải việc cấu hình một lần.
| Condition | Points to static | Points to dynamic |
|---|---|---|
| Prefix churn | Rare, few, stable | Frequent, many, moving |
| Failover | Manual or tracked | Automatic withdrawal |
| Operations | No routing staff | Protocol monitoring exists |
Bảng dưới đoạn thứ ba là phiên bản ngắn, và ba phần sau đó giải thích vì sao mỗi hàng nằm ở vị trí của nó. Hãy đọc các hàng so với số site của bạn trước khi chọn, vì một quyết định bỏ qua chi phí vận hành chỉ là nửa quyết định.
Định tuyến tĩnh thực sự tốn bao nhiêu
Một tuyến tĩnh phải đúng ở cả hai phía của đường hầm. Thêm một subnet nghĩa là sửa cổng mặc định phía xa, cổng phía nội bộ và thường là đường quay về, và quên bất kỳ điều nào trong số đó tạo ra sự cố một chiều trông như lỗi ứng dụng. Đội ứng dụng thấy hết thời gian chờ trong khi đội mạng thấy một tuyến tồn tại và có vẻ khỏe mạnh. Không đội nào sai, và đó là lý do sự cố này mất nhiều thời gian để định vị.
Một mục tĩnh cũng vẫn được cài sau khi đường bên dưới nó biến mất. Trừ khi nền tảng cung cấp giám sát, tuyến tiếp tục trỏ tới bước nhảy kế tiếp không còn chuyển tiếp, và lưu lượng biến mất thay vì chuyển hướng. Sự im lặng đó là chi phí bạn chấp nhận khi chọn phương án đơn giản.
Viết phương pháp giám sát bên cạnh mỗi tuyến, ghi lại nó bao những sự cố nào, và giữ danh sách cùng cấu hình đường hầm. Nếu không, sự cố tiếp theo sẽ do người dùng phát hiện chứ không phải mạng, và đó luôn là cách phát hiện đắt hơn.
Định tuyến động thực sự tốn bao nhiêu
Một giao thức quảng bá tiền tố mới, rút những tiền tố không đến được và bày tỏ ưu tiên giữa các đường. Điều đó thực sự hữu ích khi nhiều site hoặc đường hầm dư thừa nếu không sẽ cần chỉnh sửa phối hợp mỗi lần thay đổi. Đó cũng là lý do giao thức có thể làm bạn bất ngờ vào lúc tệ nhất. Mỗi hành động trong số đó là một thay đổi trạng thái mà bạn không tự làm.
Nó tạo ra hai trạng thái có thể không đồng ý với nhau. Đường hầm có thể ở trạng thái lên trong khi phiên định tuyến xuống, và phiên có thể lên trong khi quảng bá của nó bỏ sót subnet mà ứng dụng cần. Cả hai trông như một mạng hoạt động nửa vời, và không cái nào hiện ra trên trang trạng thái đường hầm.
Vì thế bộ lọc và chính sách trở thành một phần của thiết kế chứ không phải ý nghĩ sau. Một giao thức quảng bá mọi thứ rồi sẽ quảng bá điều gì đó sai, và tiền tố sai đi nhanh hơn người có thể sửa nó. Hãy viết bộ lọc trước khi phiên đầu tiên được bật để quảng bá đầu tiên đã là có chủ ý.
Kiểm soát điều mà phiên định tuyến được phép nói
Quyết định danh sách tiền tố được phép cho từng peer và thực thi ở đầu vào, vì bộ lọc đầu ra không thể ngăn một peer gửi cho bạn tuyến mặc định. Tuyến mặc định và tuyến tổng hợp là những lỗi đắt ở đây: chúng có thể âm thầm thay thế những đường không liên quan bằng một mục đã học trông có vẻ hợp lệ. Hãy từ chối chúng một cách rõ ràng trừ khi thiết kế thực sự muốn.
Viết site sở hữu bên cạnh mỗi mạng trước khi phiên đầu tiên lên, vì ánh xạ đó là nguồn của danh sách bộ lọc chứ không phải đồ trang trí tài liệu. Không có nó, người sửa bộ lọc phải đoán site nào nên quảng bá tiền tố.
Phân phối lại giữa hai giao thức là nơi vòng lặp bắt đầu, và nơi cùng một tiền tố đến hai lần với các thuộc tính không so sánh sạch được. Giữ phân phối lại ngoài thiết kế cho đến khi một yêu cầu cụ thể buộc phải có, và nếu buộc phải có, hãy đánh dấu và lọc các tuyến ở biên.
Giao diện đường hầm dựa trên tuyến giúp biểu diễn định tuyến động dễ hơn, vì đường hầm trở thành một giao diện có tuyến thay vì một chính sách khớp bộ chọn. Điều đó không xóa câu hỏi về phạm vi peer: các bộ chọn IPsec vẫn phải cho phép lưu lượng bạn định định tuyến.
Hãy thử đường sự cố, không phải đường thuận lợi
Dù bạn chọn gì, hãy hạ một uplink và xác nhận lưu lượng di chuyển, hoặc nó thất bại theo cách bạn đã ghi lại. Một thiết kế chỉ được thử khi cả hai đường khỏe mạnh là thiết kế chưa được thử gì cả. Hãy đo thời gian phát hiện khi bạn còn ở đó, vì con số bạn đo là con số người dùng sẽ trải qua.
Sau đó xác nhận đường quay về một cách độc lập, vì định tuyến bất đối xứng trên VPN là phổ biến và vô hình cho đến khi một thiết bị có trạng thái bỏ các phản hồi. Một luồng chỉ chạy một chiều chỉ chứng minh một nửa đường.
Thứ tự công việc: đếm tiền tố, quyết định cách phát hiện sự cố, kiểm tra ai có thể vận hành giao thức, kiểm soát điều được quảng bá, rồi thử một sự cố từ đầu đến cuối. Mỗi bước tạo ra một dữ kiện mà bước sau cần.