Newsgroup: it.tlc.gestori.fastweb
Titolo: Linux e vlc...

Questa è un pò una domanda al limite dell'OT ma chiedo qui perchè forse
trovo chi ha avuto il mio stesso problema.
Su Linux, in particolare FC4, come avete settato gli iptables per ricevere
lo streaming della tv in chiaro tramite videolan?
credevo fosse sufficiente abilitare la porta udp 11111 ma non va!
che regola devo aggiungere?
grazie!
PS. Su WinXP funziona perfettamente...
PS2. se non si fosse capito sono un novellino di linux che sta impazzendo
con gli iptables del firewall!! :o\

"un.taz" <taz...@gmail.com.invalid> ha scritto nel messaggio
news:pan.2005.07.01....@gmail.com.invalid...

visto che sotto winxp ti va puoi fare un netstat -an e controllare quali
porte con quali protocolli sono utilizzate mentre ti funziona lo streeming.

 lo streaming della tv in chiaro tramite videolan?
altro che OT! anch'io stavo su questo gruppo perchè ho il tuo stesso
problema.
io ho aperto l'udp  con la porta 11111 sia come source che come
destination, ma non basta. monitorando il traffico con ethereal ho
visto che per aprire la connessione ne usa un'altra: la 3nnn (scusa ma
sono in uff e non mi ricordo il n. preciso) e ho aperto pure quella, ma
non basta ancora.
quello che ho notato è una cosa veramente strana: se tiro giu' il
firewall momentaneamente e mi connetto ad un po' di canali, poi anche
ritirandolo su riesco a riagganciarmi a quegli stessi canali per un po'
di tempo ( alcune decine di minuti) ma non agli altri, ovvero per
agganciarmi da zero ad un canale devo farlo a porte tutte aperte anche
se con il trace di ethereal mi sembra di aver visto solo quelle due
porte utilizzate.
di fatto non so come funziona il protocollo di streaming e puo' d'arsi
che abbia necessità particolari.
C'è qualcuno in grado di aiutare??
grazie.
Licia


A naso....
iptables -A INPUT -p igmp -j ACCEPT
-- 
Formerly known as Loric

lasciate stare iptables:
/sbin/route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
(ovviamente se eth0 è l'interfaccia collegata all'hag)
si tratta cioè di accettare su quell'interfaccia il traffico multicast...


io ho aperto l'udp  con la porta 11111 sia come source che come
Ma manca IGMP.
Lascia stare i firewall se non li sai usare, che tanto servono a poco.
-- 
ciao,
Marco

 si tratta cioè di accettare su quell'interfaccia il traffico multicast...
E l'equivalente di cio' in windows, per riuscire finalmente
a ricevere gli stream senza disattivare sygate pf?
Grazie!!
V
-- 
per rispondere in mail togli il nome del fiume 

"Marco d'Itri" <m...@Linux.IT> ha scritto nel messaggio
news:da5las$f64$1...@wonderland.linux.it...

quoto

Antonio ha scritto:

E' proprio vero!! con
iptables -A INPUT -p igmp -j ACCEPT
ho risolto!!!!
grazie.

 /sbin/route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
Io utilizzo un firewall con iptables, e sulla catena FORWARD non filtro 
praticamente nulla.
Ho provato ad aggiungere la route col comando che hai detto tu, ma non 
funziona.
A quel punto ho provato a collegare il pc direttamente all'hag, ma non 
funziona ugualmente.
Ho utilizzato VLC 0.8.1, sono andato su Apri sorgente di rete -> UDP/RPT 
Multicast e ho provato alcuni degli ip (con porta 11111, ovviamente) dei 
vari canali "pubblici".
Ma non succede nulla.
Ho provato anche con un altro pc, ma il problema è il medesimo.
Per caso è necessario qualche servizio di Windows XP che ho disabilitato?
Non so più cosa pensare. :-(
-- 
Those who know don't speak
Those who speak don't know

 ha scritto nel messaggio
news:1120414808.1...@g14g2000cwa.googlegroups.com...

Grazie a lorenzodes :)


ho provato ma comunque non va... in particolare vlc mi da questo messaggio:
main debug: prebuffering done 0 bytes in 7s - 0 kbytes/s
main error: cannot pre fill buffer
main warning: cannot create a stream_t from access
main debug: unlocking module "access_udp"
main debug: thread 25746352 joined (src/input/input.c:290)
main debug: creating new input thread
main debug: waiting for thread completion
main debug: thread 25746352 (input) created at priority 0 (src/input/input.c:228)
main debug: `udp://@
239.113.1.77:11111
' gives access `udp' demux `' path `@
239.113.1.77:11111
'
main debug: demux2_New: access='udp' demux='' path='@
239.113.1.77:11111
'
main debug: looking for access_demux module
main debug: probing 0 candidates
main warning: no access_demux module matched "udp"
main debug: access2_New: access='udp' path='@
239.113.1.77:11111
'
main debug: looking for access2 module
main debug: probing 5 candidates
access_udp debug: opening server=:0 local=
239.113.1.77:11111
main debug: net: connecting to ':
0...@239.113.1.77:11111
'
main debug: looking for network module
main debug: probing 2 candidates
ipv4 debug: socket buffer size is 0x3fffe instead of 0x80000
ipv4 debug: IP_ADD_MEMBERSHIP multicast request
main debug: using network module "ipv4"
main debug: unlocking module "ipv4"
main debug: using access2 module "access_udp"
main debug: pre buffering

 main debug: pre buffering
Se il PC con vlc sopra risiede su una macchina non direttamente 
collegata all'hag, il router o l'altro PC che ne fa le veci deve essere 
in grado di fare il multicast routing.

 in grado di fare il multicast routing.
no no, la macchina è direttamente collegata all'hag... :o\
non ci sono router o server....


Allora, come già scritto, dovrebbe bastare il seguente comando:
iptables -A INPUT -p igmp -j ACCEPT
Ovviamente va usato prima di ogni regola "deny-all".

 Ovviamente va usato prima di ogni regola "deny-all".
cioè.... 
scusa ma io con gli iptable ho qualche difficoltà e non vorrei fare
macelli....
allora la regola di iptables non me la aggiunge... dice:
bash: iptables: command not found
e poi... deny-all come va usato?


Nel primo messaggio tu chiedi consigli su come settare iptables per 
permettere al protocollo IGMP di passare, ma ora scopro che non sai 
usare iptables? Come hai fatto allora ad impostare le altre regole (se 
lo hai effettivamente fatto)?

 /sbin/route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
Se il kernel è stato compilato a modo, è assolutamente inutile.
-- 
Chaos A.D.		|	Raging crowd
Tanks on the streets	|	Burning cars
Confronting police	|	Bloodshed starts
Bleeding the Plebs	|	Who'll be alive?

 non ci sono router o server....
CONFIG_IP_MULTICAST=y


 iptables -A INPUT -p igmp -j ACCEPT
Perchè mai?
Sei tu a comunicare via igmp di volerti unire ad un gruppo di multicast.
In INPUT devi accettare i pacchetti destinati all'indirizzamento multicast,
piuttosto.


 Ma manca IGMP.
Scusa, Marco, ma non è la linux box a mandare un pacchetto igmp che
annuncia l'intenzione di fare il join al gruppo di multicast?


 lo hai effettivamente fatto)?
usando "Livello di sicurezza" in [Applicazioni -> Impostazioni di sistema]
in FC3 e abilitando le porte che mi servivano (11111:udp nel caso in
questione) così come ho fatto per altri programmi. Non ho mai scritto di
saper usare "iptables" ma semplicemente di aver aperto delle porte anche
se imparare ad usarlo è una delle cose che sto cercando di fare in questo
periodo tant'è che sto con i manuali in mano. Ma sto usando Linux da
poche settimane e tempo per imparare tutto subito non ne ho! La mia
richiesta è semplicemente nello spirito di accedere a quelle risorse (la
tv in particolare visto che non ho un televisore in casa... libero di non
credere neanche a questo ma è proprio così!) rapidamente ed evitando di
fare macelli con il firewall, tutto qui! Se mi vorrai aiutare te ne sarò
grato altrimenti ti ringrazio comunque per i post che mi hai dedicato e ti
prego di non disturbarti oltre. ciao.

 
Quella regola serve per non droppare pacchetti del tipo "IGMP membership 
query" a cui il tuo PC dovrebbe rispondere con pacchetti del tipo "IGMP 
membership report".

 annuncia l'intenzione di fare il join al gruppo di multicast?
I pacchetti che devi far passare attraverso il firewall sono come questo 
(formato tcpdump):
16:40:26.107662 IP (tos 0xc0, ttl   1, offset 0, flags [none], length: 
28) xx.x.x.xxx > 
ALL-SYSTEMS.MCAST.NET
: igmp query v2

 membership report".
Uhm...sì, in effetti credo che tu abbia perfettamente ragione.
Sorry.




Apri una finestra di console e digita i seguenti comandi:
1) su (ti chiede di inserire la password di root: fallo)
2) iptables iptables -L -v
Il comando di cui al punto 2 ti mostra le regole iptables attive. A te 
interessano le regole nella catena INPUT. A questo punto prova a 
digitare il seguente comando:
iptables -I INPUT -p igmp -j ACCEPT
Il comando precedente mette la regola suddetta in cima alla catena di 
INPUT, bypassando ogni eventuale regola "deny all". Dovessero esserci 
problemi, ti basta un reboot e tutto ritorna come prima.



Male non ti fa studiare iptables ma se non hai la videostation, non c'è
verso di farti arrivare il flusso multicast.
Ormai pochissime eccezioni (senza videostation) riescono ancora a vedere la
tv con vlc.
Ciao,
			Mao

 tv con vlc.
Io sono una eccezione.. ma non lo diciamo a nessuno! ^__^
senza videostation ricevo perfettamente sotto WinXP. 
e ora anche sotto Linux... credo! ^__^

 mezzo secondo e poi si chiude vlc)
avviando da terminale l'errore che mi da è questo:
libdvbpsi error (PSI decoder): TS discontinuity (received 5, expected 0)
[00000270] mpeg_audio decoder: MPGA channels:2 samplerate:48000 bitrate:128
Segmentation fault

 problemi, ti basta un reboot e tutto ritorna come prima.
Ti ringrazio... ora sicuramente passa il flusso di dati anche se ho
qualche difficoltà di decodifica... (appare l'immagine e l'audio per
mezzo secondo e poi si chiude vlc), ma credo sia un problema di codec.
Comunque io applicavo le tue regole esattamente come hai scritto tu,
solo che queste, diventando root nel terminale, non me le
accettava. Ho dovuto ripartire con una sessione nuova direttamente da
root per farle accettare! come mai?

 qualche difficoltà di decodifica...
e ora funziona tutto perfettamente! ^__^
grazie!

 root per farle accettare! come mai?
Problema di path probabilmente. Prova su - al posto di su. Oppure digita 
il comando iptables preceduto dalla path. Per esempio: /sbin/iptables.
Per vedere in quali directory linux cerca i comandi che digiti, scrivi 
quanto segue:
echo $PATH
Per vedere dove si trova esattamente iptables (o altro comando) digita 
quanto segue:
which iptables
La linea di cui sopra necessita che iptables (nel caso dell'esempio) sia 
in una delle directory contenute nella variabile d'ambiente $PATH di cui 
sopra.



Che qlo! :-)
Ciao,
		Mao

 [cut]
Nessuno puņ aiutarmi? :-(


 Non so piů cosa pensare. :-(
Tu hai la VS?

 Tu hai la VS?
Sì.


 iptables -I INPUT -p igmp -j ACCEPT
ciao...
ho notato che questa regola si cancella ad ogni riavvio del pc.
ho letto qui:
http://www.tu-chemnitz.de/docs/lindocs/RH73/RH-DOCS/rhl-rg-it-7.3/s1-iptables-options.html
per cercare di capire come fare a renderla stabile ma non ci sono riuscito.
L'unica differenza che ho notato è tra l'uso di -A e -I, dove il primo
aggiunge la regola mentre il secondo la inserisce in un determinato punto.
per rendere la regola stabile devo sostituire (-I con -A ) ma questa
regola poi non va in cima alla catena (giusto?) oppure usarle entrambe
quindi:
iptables -A -I INPUT -p igmp -j ACCEPT
grazie!

 iptables -A -I INPUT -p igmp -j ACCEPT
No, sei fuori strada. Non so che front-end di iptables usi, per cui mi 
trovo un po' in difficoltà a dare suggerimenti. In ogni caso da' uno 
sguardo ad iptables-save e iptables-restore.

In ogni caso da' uno sguardo ad iptables-save e iptables-restore.
Fatto...ho trovato solo documentazione in inglese... ma se non ho capito
male sono una specie di back.up di iptables?

 solo di abilitare porte per tcp e udp...
Fa' un cat /etc/sysconfig/iptables
Se non sbaglio FC salva lì le regole di iptables.

 Se non sbaglio FC salva lì le regole di iptables.
si, è uscito il listato di iptables.
ora se come root edito questo file aggiungendo nella catena INPUT,
quindi al di sotto di questa riga:
:INPUT ACCEPT [0:0]
la stringa:
-I INPUT -p igmp -j ACCEPT
dovrebbe andare... giusto?
però tutte le regole che ho letto sono indicate con -A.
non cambia nulla?

 [cut]
Ho riprovato nuovamente, collegandomi direttamente all'hag, e questo è 
il messaggio di errore che ricevo con vlc:
main debug: adding playlist item `udp://@
239.113.1.76:11111
' ( 
udp://@
239.113.1.76:11111
 )
main debug: creating new input thread
main debug: waiting for thread completion
main debug: `udp://@
239.113.1.76:11111
' gives access `udp' demux `' path 
`@
239.113.1.76:11111
'
main debug: demux2_New: access='udp' demux='' path='@
239.113.1.76:11111
'
main debug: looking for access_demux module
main debug: probing 0 candidates
main debug: thread 3192 (input) created at priority 1 
(src/input/input.c:228)
main warning: no access_demux module matched "udp"
main debug: access2_New: access='udp' path='@
239.113.1.76:11111
'
main debug: looking for access2 module
main debug: probing 5 candidates
access_udp debug: opening server=:0 local=
239.113.1.76:11111
main debug: net: connecting to ':
0...@239.113.1.76:11111
'
main debug: looking for network module
main debug: probing 2 candidates
ipv4 debug: IP_ADD_MEMBERSHIP multicast request
main debug: using network module "ipv4"
main debug: unlocking module "ipv4"
main debug: using access2 module "access_udp"
main debug: pre buffering
Dove sbaglio?


 non cambia nulla?
Facciamo le cose per bene. Inserisci la regola con iptables -I INPUT -p 
igmp -j ACCEPT, poi usa iptables-save > /etc/sysconfig/iptables.
Magari prima fatti un backup di /etc/sysconfig/iptables.
Siamo ormai OT su questo NG, suggerisco che tu ti rivolga a 
i.c.o.l.iniziare per ulteriori approfondimenti.

 i.c.o.l.iniziare per ulteriori approfondimenti.
beh si, di solito stresso loro! ^___^

 Dove sbaglio?
Da quei log non si capisce (infatti non vedo particolari errori). Le 
cause possono essere molteplici:
1) firewall che blocca IGMP
2) firewall che blocca il flusso UDP in ingresso
3) boh?
Francamente io la tv di FW la guardo dalla VS, per cui più di tanto non 
posso aiutarti.
-- 
Formerly known as Loric

 posso aiutarti.
Non ho firewall attivi né nulla che possa bloccare il flusso.
Ho letto in giro per la rete che per molte connessioni DSL non funziona 
lo streaming UDP.
Io ho proprio una DSL da 6Mbit.
Può essere una giustificazione valida?


 Può essere una giustificazione valida?
Come ho detto io non sono un esperto di "TV Fastweb su VLC".
In ogni caso prova a lanciare tcpdump  -i eth1 'igmp' (sostituisci eth1 
con la tua interfaccia di rete collegata all'hag) e lasciarlo lavorare 
per qualche minuto. Se tutto va bene dovrebbe registrare pacchetti di 
tipo "
ALL-SYSTEMS.MCAST.NET
: igmp query v2" a cui il tuo PC dovrebbe 
rispondere con pacchetti del tipo "igmp v2 report".
Un'altra cosa da verificare è se il tuo linux monta un kernel compilato 
per "capire" il multicast. Per verificarlo esegui "cat /proc/net/igmp". 
Se il file (che non è un vero file) esiste e contiene qualcosa, il tuo 
kernel dovrebbe essere compilato per il multicast.


 Come ho detto io non sono un esperto di "TV Fastweb su VLC".
Ti ringrazio per l'aiuto, ma il fatto è che non riesco a far funzionare 
il tutto nemmeno con una macchina Windows XP (ne ho provata più d'una, 
in ogni caso) collegata direttamente all'hag, quindi suppongo che il 
problema sia proprio di linea.
