Saya memiliki sistem berpemilik yang mentransmisikan aliran video udp dari unit # 1 (192.168.1.1) ke unit # 2 (.1.2). Saya tidak dapat membuat perubahan pada sistem ini, dan saya mencoba mengkloning udp stream ini sehingga saya dapat mengaksesnya di program lain. Program ini akan melakukan hal-hal dengan video dan mengirimkannya kembali sebagai aliran multicast.
Saya berharap untuk melakukan ini menggunakan mesin Linux (menjalankan Ubuntu Server 12.04 sekarang) dengan tiga kartu jaringan. Dengan menghubungkan unit # 1 dan # 2 ke dua kartu jaringan (eth0 dan eth1) di mesin Linux dan menggunakan bridge, saya membuat mereka berkomunikasi. / Etc / network / interface saya terlihat seperti:
# The loopback network interface
auto lo
iface lo inet loopback
# The external interface
auto eth3
iface eth3 inet static
address 192.168.10.2
netmask 255.255.255.0
# The bridge interface
auto br0
iface br0 inet manual
bridge_ports eth0 eth1
Ini berfungsi, dan dengan menggunakan tcpdump saya telah mengkonfirmasi bahwa paket udp datang dari # 1 dan menuju ke # 2 di port 6000.
Langkah selanjutnya yang saya harap akan berhasil adalah menggunakan iptables untuk mengkloning semua paket udp mulai dari 192.168.1.1 menuju port 6000 di # 2. Saya tidak terlalu terbiasa dengan iptables, tetapi setelah membaca online dan manual saya pikir ini akan berhasil:
iptables -A PREROUTING -t mangle -p udp -s 192.168.1.1/32 --dport 6000 -j TEE --gateway 192.168.10.2
Aturan berhasil diterapkan, tetapi tidak berhasil. Jika saya menggunakan tcpdump untuk memonitor eth3, saya tidak melihat paket di sana.
Saya ingin mengambil aliran ini, mengerjakannya dan mengirimkannya sebagai multicast pada antarmuka .10.2.
Apa yang saya lakukan salah? Apakah ada sesuatu yang saya salah pahami?