nc (netcat), socat és az udp csomagok
Valamit még mindig nem értek ezekkel a progikkal kapcsolatban. Vegyük először az nc -t:
$nc -p 10000 -s 192.168.1.123 -lun
Ez így elvileg fogadja a 192.168.1.123 címre (ez egyben a gép címe), a 10000 socketra érkező csomagokat.
Egy másik gépen a LAN -on:
$echo `date` "bubu: hello" | nc 192.168.1.123 10000 -u
Ez így szépen dátum/idő -val elküldi a kis üzenetet és kilép. Egyszer! Utána akár hányszor, akár hogy próbálom nem veszi le, csak ha újraindítom a másik gépen az nc -t.
Ugyanez a socat -el nagyjából így föst az első gépen:
$socat UDP-LISTEN:10000,bind,192.168.1.123 -
(A bindet azért használom mert több hálókártya is van a gépben)
Ezután a másik gépen bepötyögöm az ismert üzenetet, de most a socat segítségével:
$echo `date` "bubu: hello" | socat UDP:192.168.1.123:10000 -
Megint szépen elküldi ... egyszer :( Soha többé, míg újra nem indítom a listen módú socketet a másik gépen. Próbáltam a netcat vs. socat, ugyanaz az eredmény. Viszont, ha a másik gép XP és az én kis bugyuta udp programocskámat használom semmi ilyet nem tapasztalok.
Miért áll le egy üzenet elküldése/fogadása után a fogadó oldal?
Az én általam írott kis socket kommunikációs interfészek sem csinálnak ilyesmit, itt valami protokoll lehet amiről én nem tudok?
- Tovább (nc (netcat), socat és az udp csomagok)
- 2538 megtekintés