"Dummy" forgalom generálása hálózati kapcsolat teszteléshez SSH-val

Úgy adódott, hogy egy újonnan beszerelt Ethernet kártya működését szerettem volna tesztelni, hogy vesznek-e el csomagok rajta, és ha igen, mennyi. Ehhez kellett volna valami hálózati forgalmat generálnom, de nem volt kedvem nagy fájlokat keresgélni, vagy mappákat tömörítgetni ehhez, meg másolgatni, közben meg még azt is figyelni mondjuk, hogy a céloldalon mikor fogy el a hely.

Eszembe jutott, egy "hack", amivel egyik gépről lehet egy mappát .tgz-be tömöríteni és egy másik gépen lévő szalag eszközre kiírni, mindezt on-the-fly, hogy ne kelljen a tömrített fájlhoz extra tárhely a forrás gépen (se), hanem menjen ki egyből szalagra a túloldalon. Ez így néz ki egy példával:

tar cvzf - /dir_to_backup | ssh dest_server "cat > /dev/tape0"

Ezt az elvet követve könnyen lehet egy "értelmetlen" hálózati forgalmat generáló parancssort írni. Vegyünk egy /dev/random, vagy egy /dev/zero blabla generátor eszközt (vegyük a /dev/zero-t, az gyorsabb, nehogy aztán ez szabja a határt a sebességnek ;) ), irányítsuk bele egy SSH sessionbe egy másik gépre, majd ott az egészet toljuk egyből bele a jó öreg /dev/null digitális fekete lyukba, és voila:

tesztgep$> cat /dev/zero | ssh celgep "cat > /dev/null"

Aztán CTRL+C-ig meg sem áll a semmiből jött, hálót megjárt, majd a célgépen semmibe veszett másolás :))

 

Wiki részletezés az eszközökről:

/dev/zero
/dev/random
/dev/null