Difference between revisions of "Netcat"

From Linuxintro
imported>ThorstenStaerk
imported>ThorstenStaerk
Line 5: Line 5:
  
 
On the target machine
 
On the target machine
 +
<source>
 
  $ nc -l -p 8000 | dd of=/dev/hda1
 
  $ nc -l -p 8000 | dd of=/dev/hda1
''The target machine is now listening on port 8000. Anything it receives it will write to the first partition of the first drive (hda1)''.
+
</source>
 +
;''The target machine is now listening on port 8000. Anything it receives it will write to the first partition of the first drive (hda1)''.
  
 
On the template machine
 
On the template machine
 +
<source>
 
  $ dd if=/dev/hda1 | nc 192.168.1.2 8000
 
  $ dd if=/dev/hda1 | nc 192.168.1.2 8000
''The first partition of the template machine is read and piped to netcat, which sends it to the IP address and correct port of the target machine.''
+
</source>
 +
;''The first partition of the template machine is read and piped to netcat, which sends it to the IP address and correct port of the target machine.''
  
 
If you use this technique don't forget the [http://wiki.linuxquestions.org/wiki/MBR Master Boot Record]. You can copy it with:
 
If you use this technique don't forget the [http://wiki.linuxquestions.org/wiki/MBR Master Boot Record]. You can copy it with:
  $ [[dd]] if=/dev/hda bs=446 count=1  
+
<source>
 +
  $ dd if=/dev/hda bs=446 count=1
 +
</source>
  
 
= snmp monitoring with UDP =
 
= snmp monitoring with UDP =

Revision as of 13:41, 15 April 2020

netcat lets you stream data over a network connection. This has several usecases:

hard drive cloning

Let's say you have two machines of similar configuration and you want to clone the hard drive of one over to the other; you want to copy the "template" machine to a "target" machine. Given that both machines are online and the target machine has an IP of 192.168.1.2 you can do this:

On the target machine <source>

$ nc -l -p 8000 | dd of=/dev/hda1

</source>

The target machine is now listening on port 8000. Anything it receives it will write to the first partition of the first drive (hda1).

On the template machine <source>

$ dd if=/dev/hda1 | nc 192.168.1.2 8000

</source>

The first partition of the template machine is read and piped to netcat, which sends it to the IP address and correct port of the target machine.

If you use this technique don't forget the Master Boot Record. You can copy it with: <source>

$ dd if=/dev/hda bs=446 count=1

</source>

snmp monitoring with UDP

You can also monitor network traffic by using netcat as data consumer. To listen to snmp's trap communication via UDP set up a SNMP trap receiver using

netcat -u -l 162 | hexdump -C


See also