Các vấn đề Nat trong tổng đài Voice IP (Asterisk, FreePBX, Yearstar, Grandstream,)
Trong một thế giới lý tưởng, tất cả các thiết bị trên Internet đều có thể giao tiếp trực tiếp (triển khai IPv6 hứa hẹn sẽ biến điều này thành hiện thực với không gian địa chỉ gần như không giới hạn). Tuy nhiên cho đến ngày nay hầu hết chúng ta vẫn sử dụng IPv4 cũ tốt, có nghĩa là tất cả các mạng riêng của chúng ta đều nằm sau thiết bị NAT (Network Address Translation).
Để giúp quản trị viên mạng định cấu hình thiết bị NAT của họ để cho phép điện thoại SIP (hoặc điện thoại mềm) giao tiếp với mạng VoIPstudio (máy chủ proxy SIP và cổng phương tiện RTP), bên dưới bạn có thể tìm thấy sơ đồ luồng cuộc gọi hiển thị địa chỉ mạng và cổng liên quan. Trong biểu đồ bên dưới các đường màu xanh lục biểu thị SIP (Giao thức khởi tạo phiên) được sử dụng để báo hiệu (thiết lập và chia nhỏ cuộc gọi), các đường màu xanh lam biểu thị RTP (Giao thức truyền tải thời gian thực) truyền các luồng âm thanh trong cuộc gọi.
ĐĂNG KÝ THIẾT BỊ ĐẦU CUỐI
Sau khi bật nguồn điện thoại SIP, nó sẽ cố gắng đăng ký vị trí của nó với mạng VoIPstudio. Điều này cho phép định tuyến các cuộc gọi đến đến các điểm cuối cụ thể trên mạng. Nó cũng tạo ra ràng buộc NAT được giữ ở chế độ mở nhờ vào các gói “lưu giữ” định kỳ được gửi giữa điện thoại SIP và máy chủ VoIPstudio.
Hình 1. SIP NAT Traversal - ĐĂNG KÝ
Điện thoại SIP gửi gói ĐĂNG KÝ từ địa chỉ IP LAN của nó. Thông thường, một cổng nguồn mặc định được định cấu hình trong hầu hết các điện thoại SIP là UDP 5060, tuy nhiên đây có thể là bất kỳ cổng UDP nào.
Gói SIP do điện thoại tạo ra đến NAT Router sẽ ghi lại cổng nguồn (trong ví dụ của chúng ta là UDP 15723) và tạo NAT ràng buộc LAN: 192.168.1.9: UDP: 5060 <-> WAN: 123.224.10.6: UDP: 15723
Yêu cầu ĐĂNG KÝ đến máy chủ VoIPstudio SIP trên địa chỉ IP công cộng cổng UDP 5060.
Máy chủ VoIPstudio SIP phản hồi bằng thông báo “401 Unauthorized” yêu cầu điện thoại SIP gửi yêu cầu ĐĂNG KÝ một lần nữa với thông tin đăng nhập của người dùng và gửi lại thiết bị NAT tại WAN: 123.224.10.6: UDP: 15723.
Thiết bị NAT dựa trên thông tin trong bảng ràng buộc NAT chuyển tiếp gói SIP đến điện thoại tại LAN: 192.168.1.9: UDP: 5060
Điện thoại SIP gửi lại gói ĐĂNG KÝ cùng với thông tin xác thực của người dùng và máy chủ đăng ký VoIPstudio lưu trữ vị trí thiết bị đầu cuối dưới dạng WAN: 123.224.10.6: UDP: 15723
Lưu ý: có thể có nhiều hơn một điện thoại SIP trên Mạng LAN Riêng, vì NAT Router sẽ tạo một WAN_IP: cổng ràng buộc ngẫu nhiên duy nhất cho mỗi thiết bị như hình (2) trong Hình 1 ở trên.
SIP KEEPALIVE
Thông thường thiết bị NAT sẽ đóng liên kết NAT được tạo ở bước (2) Hình 1 ở trên sau một thời gian ngắn không hoạt động (thường là 60 - 900 giây tùy thuộc vào thiết bị). Điều này sẽ làm cho các máy chủ VoIPstudio không thể kết nối với điện thoại và cảnh báo nó khi có cuộc gọi đến. Để giữ cho ràng buộc NAT luôn mở, chúng tôi sử dụng kỹ thuật SIP Keepalive, kỹ thuật này sẽ gửi gói SIP OPTIONS (không có chức năng nào khác ngoài việc làm cho điện thoại SIP trả lời nó bằng SIP OK) sau mỗi 30 giây.
Hình 2. SIP NAT Traversal - Keepalive
Gói SIP OPTIONS được gửi từ địa chỉ IP công cộng của máy chủ VoIPstudio cổng UDP 5060 (giống PublicIP: UDP_port như được sử dụng trước đây để đăng ký) tới NAT Router PublicIP: UDP: cổng được lưu trữ trong quá trình đăng ký.
Điện thoại phản hồi với SIP OK làm mới mạng LAN ràng buộc NAT: 192.168.1.9: UDP: 5060 <-> WAN: 123.224.10.6: UDP: 15723 và giữ nó mở để liên lạc trong tương lai.
GỌI ĐI
Khi thực hiện cuộc gọi đi, điện thoại SIP sẽ gửi gói SIP INVITE đến máy chủ VoIPstudio được thử thách đối với thông tin đăng nhập của người dùng và được gửi lại. Sau khi xác thực thành công máy chủ VoIPstudio phản hồi bằng gói SIP OK bao gồm thông tin về IP công cộng của máy chủ RTP (media) và số cổng UDP nơi điện thoại sẽ gửi luồng âm thanh của nó.
Hình 3. SIP NAT Traversal - Cuộc gọi đi
Điện thoại SIP gửi gói tin INVITE đến máy chủ SIP được thử thách về thông tin xác thực.
Sau khi xác thực thành công máy chủ SIP phản hồi với SIP OK và cung cấp địa chỉ IP công cộng và số cổng (trong ví dụ của chúng tôi ở trên 66.228.45.12 cổng 12321) của máy chủ phương tiện (âm thanh) nơi điện thoại SIP sẽ gửi luồng âm thanh của nó.
Điện thoại SIP bắt đầu gửi dữ liệu âm thanh RTP từ cổng UDP được định cấu hình trước (5685 trong ví dụ của chúng tôi ở trên).
NAT Router ghi lại cổng UDP 5685 thành một cổng UDP ngẫu nhiên (23589 trong ví dụ của chúng tôi ở trên) và tạo ràng buộc NAT.
Máy chủ phương tiện bắt đầu gửi luồng âm thanh đến địa chỉ IP công cộng NAT Router và cổng UDP nguồn 23589. Thiết bị NAT Router dựa trên thông tin trong bảng ràng buộc NAT chuyển tiếp các gói âm thanh RTP đến điện thoại tại LAN: 192.168.1.9: UDP: 5685.
GỌI ĐIỆN ĐẾN
Khi định tuyến cuộc gọi đến, máy chủ VoIPstudio SIP sử dụng thông tin vị trí đầu cuối (địa chỉ IP công cộng và số cổng) được lưu trữ trong quá trình Đăng ký được hiển thị trong Hình 1 ở trên.
Hình 4. SIP NAT Traversal - Cuộc gọi đến
Máy chủ VoIPstudio SIP gửi gói tin INVITE đến NAT Router sử dụng bảng ràng buộc NAT của nó để chuyển tiếp gói tin đó đến điện thoại SIP. Nó bao gồm thông tin về địa chỉ IP công cộng của máy chủ RTP (âm thanh) và số cổng (trong ví dụ của chúng tôi ở trên 62.228.45.12 cổng 16232) nơi điện thoại sẽ gửi luồng âm thanh RTP.
Điện thoại phản hồi bằng SIP OK, bao gồm thông tin về số cổng nơi máy chủ VoIPstudio media (RTP) sẽ gửi các luồng âm thanh của nó.
Máy chủ phương tiện (RTP) bắt đầu gửi âm thanh đến địa chỉ IP công cộng của Bộ định tuyến NAT Cổng UDP 5685. Tuy nhiên, gói này ban đầu không đến được điện thoại vì chưa có ràng buộc NAT.
Điện thoại SIP bắt đầu gửi âm thanh từ cổng UDP 5685 được cấu hình trước.
NAT Router ghi lại cổng UDP 5685 thành một cổng UDP ngẫu nhiên (27483 trong ví dụ của chúng tôi ở trên) và tạo ràng buộc NAT.
Máy chủ phương tiện chuyển cổng đích sang cổng được gán bởi thiết bị Bộ định tuyến NAT và âm thanh RTP âm thanh bắt đầu phát theo cả hai hướng.
Lưu ý: thời gian giữa các bước 3 và 6 được mô tả ở trên là từ 20-50 mili giây, do đó không có sự im lặng đáng chú ý khi bắt đầu cuộc gọi.
TÓM LƯỢC
Hầu hết các thiết bị định tuyến NAT hiện đại và điện thoại SIP sẽ hoạt động như được trình bày trong sơ đồ trên. Tuy nhiên, nếu bạn nhận thấy sự cố với cuộc gọi đến, âm thanh một chiều hoặc hành vi bất thường khác, hãy đảm bảo thiết bị của bạn được định cấu hình như sau:
Yêu cầu về khả năng tương tác của VoIPstudio
Bộ định tuyến NAT
Nó cần cho phép lưu lượng đi đến các đích có cổng UDP 5060 (SIP) và cổng UDP 10000-2000 (RTP). Hầu hết các tường lửa sẽ chỉ chặn lưu lượng đến. Tuy nhiên, nếu thiết bị của bạn cũng chặn các kết nối đi, bạn có thể cần phải điều chỉnh cấu hình của nó.
Nó cần tạo liên kết NAT trong khoảng thời gian không ngắn hơn 30 giây (khoảng thời gian của các gói lưu giữ SIP).
Điện thoại SIP
Cần sử dụng các luồng báo hiệu SIP và RTP cộng sinh. Đó là nó phải gửi và nhận dữ liệu trên cùng một số cổng. May mắn thay, hầu hết các điện thoại SIP hiện đại theo mặc định đều sử dụng phương thức liên lạc này.
Tin tức liên quan
- Các vấn đề về NAT, RTP và âm thanh
- Các gói cước miễn phí 20 phút gọi nội mạng - Áp dụng cho AutoCall của EzCall
- Tổng đài điện thoại giá rẻ
- Tổng đài điện thoại cho doanh nghiệp mới thành lập
- Giải pháp tổng đài điện thoại
- Tổng quan các loại tổng đài điện thoại trên thị trường
- Giải pháp tổng đài cho tiêm chủng
- Giải pháp tổng đài IP