Nội dung
Nhà mạng FPT triển khai IPTV (truyền hình FPT) dựa trên giao thức IGMP, vì vậy cần phải có router hỗ trợ IGMP Proxy mới sử dụng được.
Đối với pfSense, pfSense đã tích hợp sẵn IGMP Proxy, tuy nhiên vẫn cần một số cấu hình nữa mới chạy được IPTV FPT, cách thực hiện như sau.
1. Mô hình triển khai
Firewall có 4 cổng igb0-4. Trong đó:
- Cổng igb0 sẽ port WAN kết nối PPPoE đến nhà mạng FPT (cắm vào converter hoặc router FPT ở mode bridge)
- Cổng igb1 chưa dùng
- Cổng igb2 là cổng LAN bình thường dùng để cắm đến các thiết bị truy cập internet sử dụng dãy IP 192.168.10.0/24
- Cổng igb3 là cổng dành riêng để cắm IPTV sử dụng dãy IP 192.168.20.0/24
2. Tạo interface WAN cho IPTV
Khi tạo kết nối PPPoE trên pfsense, mặc định sẽ có 1 interface PPPoE được tạo ra trên cổng vật lý đó. IGMP không thể đi chung đường PPPoE, vì vậy cần tạo thêm 1 cổng WAN nữa trên igb0 dành cho lưu lượng multicast.
Trên pfSense, vào Interface => Assignment. Chọn cổng igb0 từ danh sách Available Network Port và bấm Add
Đặt các thông số như sau:
- Description: 1_WAN1_PAYTV_P0
- IPv4 Type: Static
- IPv6 Type: None
- IPv4 Address: 169.254.254.232/32 (IP này có thể đặt tùy ý vì nó chỉ dùng để đại diện cho interface, miễn là không trùng với IP LAN và WAN)
- IPv4 Gateway: None
3. Tạo interface LAN cho IPTV
Trên pfSense, vào Interface => Assignment. Chọn cổng igb3 từ danh sách Available Network Port và bấm Add
Đặt các thông số như sau:
- Description: 4_IPTV_P3
- IPv4 Type: Static
- IPv6 Type: None
- IPv4 Address: 192.168.20.1/24
- IPv4 Gateway: None
Sau khi cấu hình port, vào Services => DHCP Server và chọn Interface 4_IPTV_P3
Cấu hình các thông tin như sau:
- Range: 192.168.20.10 -> 192.168.20.20 (có thể mở rộng hoặc thu hẹp range tùy nhu cầu)
- DNS: (cần dùng cặp DNS này, nếu không sẽ không phân giải được các tên miền nội bộ của IPTV)
- Miền Nam: 210.245.31.220, 210.245.31.221
- Miền Bắc: 210.245.1.253, 210.245.1.254
4. Cấu hình IGMP Proxy
Sau khi cấu hình xong Interface, tiếp theo là cấu hình IGMP Proxy.
Vào Services => IGMP Proxy và chọn Enable IGMP => Save
Tại IGMP Proxy, bấm Add và lần lượt thêm 2 proxy như sau:
- Interface: 1_WAN1_PAYTV_P0 (Port WAN tạo ở bước trước)
- Type: Upstream Interface
- Networks (Add mỗi net riêng trên 1 dòng, cảm ơn bạn Phạm Hồng Dương đã hỗ trợ thông tin này)
- 0.0.0.0/24
- 217.166.0.0/16
- 213.75.0.0/16
- 10.0.0.0/8
- Interface: 4_IPTV_P3 (Port LAN tạo ở bước trước)
- Type: DownstreamInterface
- Networks: 192.168.20.0/24
5. Cấu hình rule firewall LAN
Vào Firewall => Rules và cấu hình các Rule như sau trên Interface 4_IPTV_P3:
Rule 1: Bấm Add và cấu hình như sau (các lựa chọn khác để mặc định):
- Action: Pass
- Interface: 4_IPTV_P3
- Protocol: Any
- Source: 4_IPTV_P3_net
- Destination: Any
- Bấm Display Advanced và đánh dấu chọn Allow packets with IP options to pass. Otherwise they are blocked by default. This is usually only seen with multicast traffic.
Rule 2: Bấm Add và cấu hình như sau (các lựa chọn khác để mặc định):
- Action: Block
- Interface: 4_IPTV_P3
- Protocol: Any
- Source: 4_IPTV_P3_net
- Destination: 3_LAN_P2_net (ở đây chọn lớp mạng của port igb2 là port LAN theo như mô hình triển khai)
Mục đích của Rule này là để chặn không cho traffic multicast của IPTV tràn sang LAN gây nghẽn
Kiểm tra để chắc chắn thứ tự Rule như sau
6. Cấu hình rule firewall WAN
Tương tự, trên Interface 1_WAN1_PAYTV_P0 cấu hình các rule sau:
Rule 1: Bấm Add và cấu hình như sau (các lựa chọn khác để mặc định):
- Action: Pass
- Interface: 1_WAN1_PAYTV_P0
- Protocol: UDP
- Source: any
- Destination: Network 224.0.0.0/4
- Bấm Display Advanced và đánh dấu chọn Allow packets with IP options to pass. Otherwise they are blocked by default. This is usually only seen with multicast traffic.
Rule 2: Bấm Add và cấu hình như sau (các lựa chọn khác để mặc định):
- Action: Pass
- Interface: 1_WAN1_PAYTV_P0
- Protocol: IGMP
- Source: any
- Destination: Network 224.0.0.0/4
- Bấm Display Advanced và đánh dấu chọn Allow packets with IP options to pass. Otherwise they are blocked by default. This is usually only seen with multicast traffic.
Kiểm tra để chắc chắn thứ tự Rule như sau
Sau khi hoàn tất, Apply Config trên pfsense để nhận cấu hình rule mới
7. Cấu hình Bridge
Sau khi cấu hình xong Firewall, vào Interface => Assignment, sang tab Bridges và bấm Add
Tại đây chọn 2 port 1_WAN1_PAYTV_P0 và 4_IPTV_P3 (là port WAN và LAN của IPTV, giữ phím Ctrl khi chọn để chọn cùng lúc nhiều port), đặt tên tại Description và bấm Save
Lúc này, trên Bridge sẽ hiện card Bridge0, lúc này đầu thu đã có thể nhận tín hiệu truyền hình.
Chúc các bạn thành công.