Siųskite duomenis per tinklo kompiuterius naudodami „Netcat“ naudodami komandų eilutę
Netcat yra galingas komandų eilutės įrankis, galintis skaityti ir rašyti duomenis per tinklo ryšį naudojant TCP/IP. Jis dažniausiai naudojamas perdavimui, failų perdavimui, prievadų nuskaitymui ir kt. Nors netcat kilmė iš unix ir linux pasaulių, netcat taip pat yra integruota į Mac OS X, todėl naudosime nc įrankį kaip paprastą būdą siųsti duomenis ir kitą tekstą per du tinklo kompiuterius.Naudojant „netcat“ duomenims siųsti naudojant gana paprastą kliento ir serverio ryšį, jis siūlo potencialiai greitesnę tradicinio failų bendrinimo alternatyvą, kai vartotojai norėtų likti komandinėje eilutėje siųsdami ir gaudami duomenis, o prisijungimas per SSH arba SFTP t praktiška.
Atkreipkite dėmesį, kad „netcat“ nereikalauja prisijungimų ar autentifikavimo, vienintelis reikalavimas yra tai, kad klientas žinotų serverio IP adresą ir klausymo prievado numerį. Akivaizdu, kad dėl to kyla tam tikras netinkamo saugumo naudojimo potencialas, todėl duomenims ir tekstui siųsti „netcat“ paprastai geriausia skirti pažengusiems vartotojams arba naudoti tik už apsaugoto vietinio tinklo, kur yra nedidelė rizika. Situacijose, kuriose svarbu pabrėžti saugumą, geriau naudoti SSH.
Kad būtų lengviau, 1 kompiuterį, kuris klauso netcat, vadinsime „serveriu“, o 2 kompiuterį, siunčiantį duomenis į 1 kompiuterį, vadinsime „klientu“.
Nustatykite „Netcat“ klausytis serveryje (1 kompiuteryje) ir prievade
Paleisime „netcat“ ir klausysime per 2999 prievadą, o tada visus gautus duomenis nukreipsime į failą „received.txt“ naudodami šią komandų eilutę:
nc -l 2999 > gautas.txt
Prieš skambindami, pereidami prie kliento, norėsite turėti „Mac“ IP adresą vietiniame tinkle. Tai galite gauti iš tinklo valdymo skydelio arba, kadangi jau esate terminale, naudodami komandų eilutę su tokia sintaksė:
ipconfig getifaddr en0
Šiuolaikiniuose „Mac“ kompiuteriuose su tik „Wi-Fi“ bus naudojamas en0, o „Mac“ kompiuteriuose su eternetu ir „Wi-Fi“ gali būti naudojamas en1. Jei vienas nieko nerodo, pabandykite kitą sąsają gauti LAN IP. Tarkime, kad šis „Mac“ IP yra nurodytas kaip „192.168.1.101“, žinoma, jūsų IP gali skirtis. Jums to reikės kliento kompiuteryje, kad galėtumėte siųsti duomenis, kuriuos aptarsime toliau.
Perkelkite duomenis iš kliento (2 kompiuteris) į klausymo serverį
Dabar kliente, iš kurio norite siųsti duomenis, galite naudoti tokią komandą, kaip nurodyta toliau. Naudosime „cat“, kad iškeltume tekstinį failą tinkle į klausymosi „netcat“ serverį, bet jūs galite perduoti beveik viską, ko norite:
cat sendthisdataover.txt | nc 192.168.1.101 2999
Kad tai veiktų tinkamai, būtinai įveskite savo IP adresą iš serverio ir nurodykite atitinkamą failą arba tekstą, kurį norite siųsti.
Darant prielaidą, kad vietinis tinklas veikia net nežymiai, duomenys turėtų gautis gana greitai, jei ne akimirksniu. Kai duomenų perdavimas bus baigtas, abi pusės nutrūks ir serveris nustos klausytis, tada uždarys prievadą. Dėl to jis veiksmingas vienkartiniam duomenų, pvz., žurnalo failų ar didelio tekstinio dokumento, siuntimui, tačiau tai nebūtinai praktiška norint perkelti daug failų.
Kaip jau minėta, galite perkelti beveik bet kokius duomenis, todėl nesvarbu, ar tai kitos programos, uodegos, katės išvestis, ar net išmesta tiesiai iš mainų srities naudojant pbcopy ir pbpaste, jie bus perkelti per netcat.
Pažymėtina, kad yra patogesnių būdų, kaip bendrinti iškarpinę tarp Mac arba tarp Mac ir Linux ar Windows įrenginių, ir tokiose situacijose geriau naudoti nemokamus įrankius, pvz., Teleport for Mac. „Mac“ įvesties bendrinimas arba nemokama „Synergy“ programa, jei naudojate „Mac“ ir asmeninio kompiuterio platformas. Abu leidžia vartotojui bendrinti iškarpinės duomenis ir įvesties įrenginius, pvz., pelę ir klaviatūrą.
Nors ši demonstracija rodoma dviejuose „Mac“ kompiuteriuose su OS X, nėra jokios priežasties, kodėl negalite naudoti „netcat“ duomenims siųsti iš „Mac“ į „Linux“ įrenginį arba atvirkščiai.
Yra daugybė kitų puikių „netcat“ naudojimo būdų. Jei turite mėgstamiausių, praneškite mums komentaruose!