Skicka data över nätverksdatorer med Netcat Använda kommandoraden

Netcat är ett kraftfullt kommandoradsverktyg som kan läsa och skriva data över en nätverksanslutning med hjälp av TCP / IP, det används vanligtvis för reläer, filöverföring, portscanning, bland annat. Även om netcat-ursprung är från unix- och linuxvärlden, är netcat också inbyggt i Mac OS X, och vi ska använda nc-verktyget som ett enkelt sätt att skicka data och annan text över två nätverksdatorer.

Genom att använda netcat för att skicka data med ett ganska enkelt klient- och serverförhållande, erbjuder det ett potentiellt snabbare alternativ till traditionell fildelning när användarna föredrar att bo i kommandoraden medan de skickar och tar emot data och där anslutning via SSH eller SFTP är inte " t praktiskt.

Observera att netcat kräver inga inloggningar eller autentisering, det enda kravet är att klienten är medveten om servrarens IP-adress och lyssnarportnummeret. Det uppenbarligen uppenbarar viss potential för säkerhetsmissbruk, så att man använder netcat för att skicka data och text är generellt mest reserverat för avancerade användare eller för användning uteslutande bakom ett skyddat lokalt nätverk där risken är liten. Situationer där säkerhet är viktigt att betona skulle vara bättre med SSH.

För enkelhet hänvisar vi till dator 1 som lyssnar med netcat som "Server", och vi hänvisar till dator 2 som skickar data till dator 1 som "klient".

Ställ in Netcat för att lyssna på server (dator 1) och port

Vi startar netcat och får lyssna på port 2999 och sedan omdirigera någon av de data som tagits emot till en fil med namnet "received.txt" med följande kommandosträng:

nc -l 2999 > received.txt

Innan du gör det gjort en övergång till klienten, vill du ha Mac-IP-adressen på det lokala nätverket. Du kan hämta det från kontrollpanelen Nätverk, eller eftersom du redan är på Terminal, via kommandoraden med följande syntax:

ipconfig getifaddr en0

Moderna Macs med Wi-Fi kommer bara att använda en0, Macs med Ethernet och Wi-Fi kan använda en1. Om det inte blir något, försök det andra gränssnittet för att få LAN-IP. Låt oss anta att denna Macs IP är rapporterad som "192.168.1.101", självklart är din sannolikhet att variera. Du behöver detta på klientdatorn för att skicka data över, som vi kommer att täcka nästa.

Rördata från klienten (dator 2) till lyssningsservern

Nu på klienten där du vill skicka data från, kan du använda ett kommando som följande. Vi använder katten för att dumpa en textfil över nätverket till den lyssnande netcat-servern, men du kan pipa över nästan vad som helst du vill ha:

cat sendthisdataover.txt | nc 192.168.1.101 2999

För att detta ska fungera korrekt, var noga med att fylla i din egen IP-adress från servern och att kata rätt fil eller text som du vill skicka över.

Förutsatt att det lokala nätverket är till och med marginellt snabbt, ska uppgifterna komma ganska snabbt om inte direkt. När dataöverföringen är klar kommer båda sidorna av anslutningen att upphöra och servern slutar lyssna och stäng sedan porten. Detta gör det effektivt för engångsändning av data som loggfiler eller ett stort textdokument, men det är inte nödvändigtvis praktiskt att flytta över många filer.

Som redan nämnts kan du pipa över nästan alla data, så om det är resultatet av en annan app, svans, katt eller till och med dumpad direkt från urklippet med pbcopy och pbpaste, kommer det att överföras via netcat.

Det bör noteras att det finns mer praktiska sätt att dela ett urklipp mellan Mac eller mellan Mac- och Linux- eller Windows-maskiner, och i sådana situationer är det bättre att använda gratis verktyg som Teleport för Mac-till-Mac-ingångsdelning eller kostnadsfritt Synergy-verktyg om du går över plattform mellan Mac och PC. Båda tillåter en användare att dela ut urklippsdata såväl som inmatningsenheter som mus och tangentbord.

För inspelningen, medan den här demonstrationen visas på två Macs med OS X, finns det ingen anledning att du inte kan använda Netcat för att skicka data mellan en Mac och Linux-maskin eller vice versa.

Det finns massor av andra stora användningsområden för netcat där ute, om du har några favoriter, låt oss veta i kommentarerna!