Tại VietITPro.vn, chúng tôi tiếp nhận trung bình 15-20 ca sự cố tổng đài IP PBX mỗi tháng. Đa số các lỗi không nằm ở phần cứng bo mạch (như tụ hóa bị phù hay chip CPU quá nhiệt) mà tập trung vào sự bất ổn của giao thức SIP khi đi qua các lớp mạng NAT/Firewall. Bài viết này là tổng hợp kinh nghiệm thực tế từ bàn kỹ thuật của chúng tôi dành cho dòng Grandstream UCM và Yeastar S-Series.
1. Bản chất vấn đề: Tại sao SIP Trunk lại "rụng" và mất tiếng?
Giao thức SIP (Session Initiation Protocol) được thiết kế cho mạng nội bộ, nơi các thiết bị tin tưởng lẫn nhau. Khi đưa ra môi trường Internet công cộng, SIP gặp rào cản lớn từ NAT (Network Address Translation).
Khi bạn cấu hình SIP Trunk trên Grandstream UCM hoặc Yeastar, gói tin SIP chứa địa chỉ IP nội bộ (ví dụ: 192.168.1.100) trong phần Header (Contact, Via, SDP). Router/Firewall của bạn sẽ thay thế IP này bằng IP Public, nhưng nó lại không thể thay thế IP trong phần nội dung (Body) của gói tin SDP. Kết quả:
- Lỗi đăng ký: Tổng đài gửi yêu cầu Register nhưng nhận lại 403 Forbidden hoặc 401 Unauthorized do sai lệch thông tin xác thực hoặc IP Public bị nhà mạng chặn.
- Mất tiếng một chiều (One-way Audio): Gói tin báo hiệu (Signaling) đi qua nhưng luồng dữ liệu âm thanh (RTP) bị chặn do Router không mở đúng dải port hoặc không hiểu địa chỉ đích của RTP.
2. Quy trình xử lý lỗi đăng ký SIP Trunk (Registration Failed)
Trước khi can thiệp sâu, hãy thực hiện các bước kiểm tra theo thứ tự ưu tiên:
Kiểm tra Layer 3 và DNS
- Ping test: Đảm bảo tổng đài ping thấy IP của nhà mạng (SIP Provider).
- DNS Resolution: Nhiều trường hợp tổng đài không phân giải được domain của SIP Trunk. Hãy thử đổi DNS sang 8.8.8.8 hoặc 1.1.1.1 trong phần Network Settings của tổng đài.
- Kiểm tra trạng thái Trunk:
- Trên Grandstream UCM: Truy cập
Extension/Trunk->VoIP Trunks. Nhìn trạng thái cộtStatus. Nếu đỏ, click vào biểu tượngDiagnosticđể xem log lỗi. - Trên Yeastar: Truy cập
Gateway->Trunk->Basicđể kiểm traRegistration Status.
Các mã lỗi phổ biến cần thuộc lòng
3. Khắc phục lỗi mất tiếng 1 chiều (One-way Audio)
Đây là "cơn ác mộng" của kỹ thuật viên. Khi bạn nghe thấy đối phương nhưng đối phương không nghe thấy bạn (hoặc ngược lại), vấn đề 99% nằm ở cấu hình NAT Traversal.
Bước 1: Cấu hình NAT trên Grandstream/Yeastar
Bạn cần khai báo thông tin IP Public cho tổng đài biết nó đang đứng ở đâu trên Internet.
- Local Network Address: Nhập dải mạng nội bộ (Ví dụ: 192.168.1.0/255.255.255.0).
- External IP Address: Nhập IP Public tĩnh của văn phòng.
- External Host: Nếu dùng IP động (Dynamic IP), hãy nhập tên miền DDNS (ví dụ: vietitpro.dyndns.org).
Bước 2: Cấu hình NAT Traversal (STUN/ICE)
Nếu tổng đài không có IP Public tĩnh (ví dụ đang đặt sau modem nhà mạng), bạn bắt buộc phải dùng STUN server.
- STUN Server: Nhập
stun.l.google.com:19302. STUN giúp tổng đài tự động phát hiện IP Public và Port mà Router đã NAT ra.
Bước 3: Forward Port trên Router/Firewall
Để âm thanh thông suốt, bạn phải mở dải port RTP (Real-time Transport Protocol).
- SIP Port: 5060 (UDP/TCP).
- RTP Port Range: Mặc định trên Grandstream/Yeastar là 10000 - 20000.
- Lưu ý: Chỉ cần mở dải này là đủ. Đừng bao giờ mở "All Ports" hoặc DMZ cho tổng đài, vì sẽ khiến tổng đài bị tấn công dò mật khẩu (Brute force) chỉ trong vài phút.
4. Kỹ thuật "Bắt gói tin" (Packet Capture) - Chìa khóa vàng
Nếu cấu hình trên vẫn không được, đừng đoán mò. Hãy dùng tính năng Packet Capture tích hợp sẵn trên Web GUI của Grandstream/Yeastar.
1. Vào mục Maintenance -> Packet Capture.
2. Chọn interface là eth0 (cổng mạng chính).
3. Bấm Start, thực hiện cuộc gọi lỗi, sau đó Stop.
4. Tải file .pcap về và mở bằng Wireshark.
5. Trong Wireshark, gõ bộ lọc sip hoặc rtp.
6. Phân tích: Nếu thấy gói tin RTP gửi đi nhưng không có phản hồi (hoặc phản hồi lỗi), bạn sẽ biết chính xác Router nào đang chặn gói tin đó.
5. kinh nghiệm thực tế từ VietITPro
Qua quá trình sửa chữa, chúng tôi rút ra các lưu ý quan trọng để hệ thống chạy bền bỉ:
- Hạn chế dùng SIP ALG: Trên các Router/Modem như TP-Link, DrayTek, Cisco, tính năng "SIP ALG" thường được bật mặc định. Nó tự ý sửa đổi gói tin SIP khiến tổng đài bị loạn. Hãy tắt ngay SIP ALG trên mọi thiết bị mạng ở văn phòng.
- Ưu tiên dùng IP Tĩnh: Đối với SIP Trunk, nếu dùng IP động, hãy đảm bảo nhà mạng hỗ trợ đăng ký qua Domain (FQDN) thay vì IP.
- Bảo mật: Luôn đổi port mặc định 5060 sang một port lạ (ví dụ: 5088) để tránh bị bot quét. Kích hoạt tính năng
Fail2Bantrên tổng đài để tự động chặn IP kẻ tấn công sau 3 lần nhập sai mật khẩu.
6. FAQ - Giải đáp câu hỏi thường gặp
Hỏi: Tại sao tôi đã mở port 5060 rồi mà vẫn không đăng ký được?
Đáp: Kiểm tra xem nhà mạng có yêu cầu đăng ký qua port khác không (thường là 5061 nếu có bảo mật TLS). Kiểm tra xem nhà mạng có whitelist IP Public của bạn không, nếu IP bạn thay đổi, họ sẽ chặn ngay lập tức.
Hỏi: Có cách nào không cần cấu hình NAT mà vẫn chạy tốt không?
Đáp: Có, sử dụng VPN (Site-to-Site VPN) giữa tổng đài và server của nhà mạng. Đây là giải pháp ổn định nhất, không cần mở port ra Internet, nhưng yêu cầu kiến thức về hạ tầng mạng cao hơn.
Hỏi: Tổng đài Grandstream của tôi thi thoảng bị khởi động lại, có phải do lỗi cấu hình SIP?
Đáp: Không. Nếu tổng đài tự khởi động lại, đó là lỗi phần cứng (Nguồn hoặc RAM). Hãy mang tới trung tâm để kiểm tra tụ lọc nguồn hoặc chip quản lý điện áp. Bài viết này tập trung vào lỗi phần mềm/network.
Hy vọng hướng dẫn này giúp các kỹ thuật viên tại cơ sở có cái nhìn sâu hơn về các lỗi SIP phổ biến. Nếu hệ thống của bạn gặp các ca khó hơn như hỏng bo mạch chủ (Mainboard) hay lỗi chip flash, hãy liên hệ trực tiếp với VietITPro.vn để được hỗ trợ chuyên sâu.




