Inhoudsopgave:

HackerBox 0031: de Ether: 10 stappen
HackerBox 0031: de Ether: 10 stappen

Video: HackerBox 0031: de Ether: 10 stappen

Video: HackerBox 0031: de Ether: 10 stappen
Video: HackerBox #0031 Unboxing - THE ETHER 2024, November
Anonim
HackerBox 0031: de Ether
HackerBox 0031: de Ether

Deze maand verdiepen HackerBox-hackers zich in Ethernet, routerbesturingssystemen, netwerkmonitoring en netwerkanalyse. Deze Instructable bevat informatie voor het werken met HackerBox #0031, die u hier kunt ophalen zolang de voorraad strekt. Als u ook maandelijks zo'n HackerBox in uw mailbox wilt ontvangen, schrijf u dan in op HackerBoxes.com en doe mee aan de revolutie!

Onderwerpen en leerdoelen voor HackerBox 0031:

  • Configureer de WT3020 Ethernet-router
  • Installeer het OpenWrt-besturingssysteem op de WT3020-router
  • Monteer de HackerBoxes EtherTap Kit
  • Implementeer de EtherTap om netwerkverkeer passief te bewaken
  • Configureer de Arduino IDE voor gebruik met de Arduino Nano
  • Interface een ENC28J60 Ethernet-controller naar de Arduino Nano
  • Verzend en ontvang Ethernet-pakketten van de Arduino Nano

HackerBoxes is de maandelijkse abonnementsservice voor doe-het-zelf-elektronica en computertechnologie. Wij zijn hobbyisten, makers en experimenteerders. Wij zijn de dromers van dromen. HACK DE PLANEET!

Stap 1: HackerBox 0031: Inhoud van de doos

  • HackerBoxes #0031 Verzamelbare referentiekaart
  • Nexx WT3020F Ethernet-router
  • Exclusieve HackerBox EtherTap Kit
  • Arduino Nano 5V, 16MHz
  • ENC28J60 Ethernet-module
  • Rode crossover-adapterstekker
  • Dupont-truien van vrouw naar vrouw
  • Exclusieve OpenWrt-sticker

Enkele andere dingen die nuttig zullen zijn:

  • Soldeerbout, soldeer en standaard soldeergereedschappen
  • Computer voor het uitvoeren van softwaretools

Het belangrijkste is dat je een gevoel van avontuur, doe-het-zelf-geest en nieuwsgierigheid van hackers nodig hebt. Hardcore DIY-elektronica is geen triviale bezigheid, en HackerBoxen worden niet afgezwakt. Het doel is vooruitgang, niet perfectie. Als je volhardt en geniet van het avontuur, kan er veel voldoening worden gehaald uit het leren van nieuwe technologie en hopelijk het werkend krijgen van een aantal projecten. We raden aan om elke stap langzaam te doen, op de details te letten en wees niet bang om hulp te vragen.

Er is een schat aan informatie voor huidige en toekomstige leden in de HackerBoxes FAQ.

Stap 2: De ether

Image
Image

"Het enige waar ik me echt zorgen over maakte, was de ether. Er is niets in de wereld dat hulpelozer, onverantwoordelijker en verdorvener is dan een man in de diepten van een etherbinge, en ik wist dat we vrij snel in dat rotte spul zouden belanden." - Hunter S. Thompson, "Angst en walging in Las Vegas"

Ethernet (Wikipedia) is een familie van computernetwerktechnologieën die vaak worden gebruikt in lokale netwerken (LAN's). Ethernet werd commercieel geïntroduceerd in 1980 en voor het eerst gestandaardiseerd in 1983 en is sindsdien verfijnd om hogere bitsnelheden en langere verbindingsafstanden te ondersteunen. De gekoppelde "Ethernet Hacks"-video, hoewel verder best goed, maakt de absurde bewering dat bekabeld Ethernet overbodig wordt door draadloze technologieën.

Het originele 10BASE5 Ethernet gebruikt grote, dikke coaxkabels als gedeeld medium. Nieuwere Ethernet-varianten gebruiken twisted pair en glasvezelverbindingen in combinatie met hubs of switches. In de loop van zijn geschiedenis zijn de Ethernet-gegevensoverdrachtsnelheden verhoogd van de oorspronkelijke 2,94 Mbps tot honderden Gbps.

Ethernet levert diensten inclusief de onderste twee lagen van het OSI-model (fysieke laag en datalinklaag). Als je meer wilt weten over het zevenlaagse OSI-netwerkmodel (je doet dat), kijk dan op Wikipedia en/of deze video.

Stap 3: Nexx WT3020F Ethernet-router en OpenWrt

Nexx WT3020F Ethernet-router en OpenWrt
Nexx WT3020F Ethernet-router en OpenWrt

De Nexx WT3020-serie Ethernet-routers zijn gebaseerd op de MediaTek MT7620N (specificaties). Deze routers bevatten twee UTP Ethernet-poorten en een 802.11n 300Mbps draadloze interface die werkt op 2,4 GHz.

OpenWrt is een open source-project voor embedded besturingssystemen op basis van Linux, voornamelijk gebruikt op embedded routers. Alle componenten zijn geoptimaliseerd om klein genoeg te zijn om in de beperkte opslag en geheugen van thuisrouters te passen. OpenWrt kan worden geconfigureerd met behulp van een opdrachtregelinterface (ash shell) of een webinterface (LuCI).

Er zijn enkele duizenden pakketten beschikbaar voor installatie via het opkg-pakketbeheersysteem om de functionaliteit van uw apparaat uit te breiden. Deze pakketten omvatten onder andere firewalls, telefonie, VPN's, opslag, berichten, routering en e-maildiensten.

Dit OpenWrt Wiki-item behandelt het installeren van OpenWrt op de WT3020-router. Onder het kopje "Installatie" staat een tabel met binaire bestanden. Gebruik deze niet. Klik in plaats daarvan op de link voor "LEDE-firmwaredownload" net onder die tabel. Dit zijn de laatste versies. Hier is een leuke tutorial over het flashen van de firmware van de router. De OpenWrt HOWTO's kunnen ook heel nuttig zijn.

Stap 4: EtherTap-kit

EtherTap-kit
EtherTap-kit

De EtherTap is een passieve Ethernet-kraan. Het is "passief" omdat de EtherTap eruitziet als een stuk Ethernet-kabel naar het netwerk waar het wordt ingezet. De pass-through-poorten worden inline aangesloten binnen de te bewaken Ethernet-verbinding. De twee kanalen van de doorvoer (één die in elke richting gaat) worden fysiek "afgetakt" in de tracering van PCB. De getapte signalen zijn gekoppeld aan de twee tappoorten. De twee tappoorten hebben alleen hun ontvangstkanalen bedraad. Volgens dit veiligheidsmechanisme kan geen van de tappoorten in de doorgang zenden.

De EtherTap-kit bevat:

  • Exclusieve HackerBoxen EtherTap PCB
  • Twee zwarte RJ45-aansluitingen
  • Twee gele RJ45-aansluitingen
  • Twee 220pF keramische condensatoren

De montage van de EtherTap Kit is vrij eenvoudig. De twee verschillend gekleurde RJ45-aansluitingen zijn eigenlijk identiek en kunnen op elke gewenste plaats worden geplaatst. Over het algemeen plaatsen we de zwarte RJ45-aansluitingen op de doorvoerpoorten en de gele aansluitingen op de tappoorten. De twee condensatoren zijn niet gepolariseerd en kunnen op beide manieren worden geplaatst.

De werking van de EtherTap omvat het aansluiten van de pass-through en vervolgens het aansluiten van een van de tappoorten (afhankelijk van de richting van het verkeer dat u bewaakt) op een computer waarop een pakketopname-/analyseprogramma zoals Wireshark draait.

Shout Out: De EtherTap is geïnspireerd door Michael Ossmann's Throwing Star LAN Tap, dus er zijn veel relevante details en geschiedenis op zijn site Great Scott Gadgets. Michael maakt nog een aantal andere zeer coole speeltjes die de moeite waard zijn om te bekijken terwijl je daar bent.

Stap 5: Arduino Nano Microcontroller-platform

Arduino Nano Microcontroller-platform
Arduino Nano Microcontroller-platform

De meegeleverde Arduino Nano-module wordt geleverd met header-pinnen, maar deze zijn niet aan de module gesoldeerd. Laat de pinnen er voorlopig af. Voer deze eerste tests van de Arduino Nano-module afzonderlijk uit van het BioSense-bord en VOORAFGAAND aan het solderen van de header-pinnen van de Arduino Nano. Het enige dat nodig is voor de volgende paar stappen is een microUSB-kabel en de Nano-module zoals deze uit de tas komt.

De Arduino Nano is een op het oppervlak te monteren, breadboard-vriendelijk, geminiaturiseerd Arduino-bord met geïntegreerde USB. Het is verbazingwekkend volledig uitgerust en gemakkelijk te hacken.

Functies:

  • Microcontroller: Atmel ATmega328P
  • Spanning: 5V
  • Digitale I/O-pinnen: 14 (6 PWM)
  • Analoge ingangspennen: 8
  • Gelijkstroom per I/O-pin: 40 mA
  • Flash-geheugen: 32 KB (2KB voor bootloader)
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Kloksnelheid: 16 MHz
  • Afmetingen: 17 mm x 43 mm

Deze specifieke variant van de Arduino Nano is het zwarte Robotdyn-ontwerp. De interface is via een ingebouwde MicroUSB-poort die compatibel is met dezelfde MicroUSB-kabels die worden gebruikt met veel mobiele telefoons en tablets.

Arduino Nano's hebben een ingebouwde USB/seriële bridge-chip. Op deze specifieke variant is de bridge-chip de CH340G. Merk op dat er verschillende andere soorten USB/seriële bridge-chips worden gebruikt op de verschillende soorten Arduino-kaarten. Met deze chips kan de USB-poort van uw computer communiceren met de seriële interface op de Arduino-processorchip.

Het besturingssysteem van een computer vereist een apparaatstuurprogramma om te communiceren met de USB/seriële chip. De driver zorgt ervoor dat de IDE kan communiceren met het Arduino-bord. Het specifieke apparaatstuurprogramma dat nodig is, hangt af van zowel de versie van het besturingssysteem als het type USB/seriële chip. Voor de CH340 USB/Serial-chips zijn er drivers beschikbaar voor veel besturingssystemen (UNIX, Mac OS X of Windows). De maker van de CH340 levert die drivers hier.

Wanneer u de Arduino Nano voor het eerst aansluit op een USB-poort van uw computer, moet het groene aan / uit-lampje gaan branden en kort daarna moet de blauwe LED langzaam beginnen te knipperen. Dit gebeurt omdat de Nano vooraf is geladen met het BLINK-programma, dat draait op de gloednieuwe Arduino Nano.

Stap 6: Arduino geïntegreerde ontwikkelomgeving (IDE)

Arduino geïntegreerde ontwikkelomgeving (IDE)
Arduino geïntegreerde ontwikkelomgeving (IDE)

Als je de Arduino IDE nog niet hebt geïnstalleerd, kun je deze downloaden van Arduino.cc

Als je aanvullende inleidende informatie wilt over het werken in het Arduino-ecosysteem, raden we je aan de instructies voor de HackerBoxes Starter Workshop te bekijken.

Steek de Nano in de MicroUSB-kabel en het andere uiteinde van de kabel in een USB-poort op de computer, start de Arduino IDE-software, selecteer de juiste USB-poort in de IDE onder tools>port (waarschijnlijk een naam met "wchusb" erin). Selecteer ook "Arduino Nano" in de IDE onder tools>board.

Laad ten slotte een stukje voorbeeldcode op:

Bestand->Voorbeelden->Basis->Knipperen

Dit is eigenlijk de code die vooraf op de Nano was geladen en nu zou moeten lopen om de blauwe LED langzaam te laten knipperen. Als we deze voorbeeldcode laden, verandert er dus niets. Laten we in plaats daarvan de code een beetje aanpassen.

Als je goed kijkt, kun je zien dat het programma de LED aanzet, 1000 milliseconden (één seconde) wacht, de LED uitschakelt, nog een seconde wacht en dan alles opnieuw doet - voor altijd.

Wijzig de code door beide "delay(1000)"-instructies te wijzigen in "delay(100)". Deze aanpassing zorgt ervoor dat de LED tien keer sneller knippert, toch?

Laten we de gewijzigde code in de Nano laden door op de knop UPLOADEN (het pijlpictogram) net boven uw gewijzigde code te klikken. Bekijk hieronder de code voor de status info: "compileren" en dan "uploaden". Uiteindelijk zou de IDE "Uploading Complete" moeten aangeven en zou uw LED sneller moeten knipperen.

Zo ja, gefeliciteerd! Je hebt zojuist je eerste stukje embedded code gehackt.

Als uw snel knipperende versie eenmaal is geladen en actief is, waarom zou u dan niet kijken of u de code opnieuw kunt wijzigen zodat de LED twee keer snel knippert en dan een paar seconden wacht voordat u dit herhaalt? Probeer het eens! Wat dacht je van andere patronen? Als je er eenmaal in bent geslaagd om een gewenst resultaat te visualiseren, te coderen en te observeren om te werken zoals gepland, heb je een enorme stap gezet om een competente hardware-hacker te worden.

Stap 7: Arduino Nano Header-pinnen

Arduino Nano Header-pinnen
Arduino Nano Header-pinnen

Nu uw ontwikkelcomputer is geconfigureerd om code naar de Arduino Nano te laden en de Nano is getest, koppelt u de USB-kabel los van de Nano en maakt u zich klaar om te solderen.

Als je nieuw bent met solderen, zijn er veel geweldige handleidingen en video's online over solderen. Hier is een voorbeeld. Als je denkt dat je extra hulp nodig hebt, probeer dan een lokale makersgroep of hackerruimte bij jou in de buurt te vinden. Ook zijn amateurradioclubs altijd uitstekende bronnen van elektronica-ervaring.

Soldeer de twee enkele rij headers (elk vijftien pinnen) aan de Arduino Nano-module. De zes-pins ICSP-connector (in-circuit serial programming) wordt in dit project niet gebruikt, dus laat die pinnen er gewoon af.

Controleer na het solderen zorgvuldig op soldeerbruggen en/of koude soldeerverbindingen. Sluit ten slotte de Arduino Nano weer aan op de USB-kabel en controleer of alles nog goed werkt.

Stap 8: ENC28J60 Ethernet-module

ENC28J60 Ethernet-module
ENC28J60 Ethernet-module

De ENC28J60 (datasheet) is een Ethernet-controllerchip. Dankzij de SPI-interface is het redelijk eenvoudig te gebruiken met zelfs de eenvoudigste microcontrollers.

Merk op dat sommige versies van deze module een LDO-spanningsregelaar hebben waardoor ze kunnen worden aangedreven door 5V, ook al is de ENC28J60-chip 3,3V. Deze versie van de module heeft GEEN spanningsregelaar en moet extern van 3,3V worden voorzien.

De EtherCard Arduino-bibliotheek voert interfacing op laag niveau uit van uw Arduino-code naar het netwerk. De bibliotheek komt met verschillende voorbeelden. Een leuke om mee te beginnen is backSoon.ino, waarmee je vanuit elke webbrowser op hetzelfde LAN toegang hebt tot de schets op de Arduino Nano.

Stap 9: Crossover-adapterstekker

Crossover-adapterstekker
Crossover-adapterstekker

Een Ethernet-crossover (Wikipedia) is een kabel of adapterstekker die wordt gebruikt om computerapparaten rechtstreeks met elkaar te verbinden. Het wordt meestal gebruikt om twee apparaten van hetzelfde type aan te sluiten, b.v. twee computers (via hun netwerkinterfacecontrollers) of twee schakelaars met elkaar. Daarentegen worden patchkabels of straight-through-kabels gebruikt om apparaten van verschillende typen, zoals een computer, aan te sluiten op een netwerkswitch of Ethernet-hub.

De bedrading binnen de crossover is opzettelijk gekruist om de zendsignalen aan het ene uiteinde te verbinden met de ontvangstsignalen aan het andere uiteinde en vice versa.

Stap 10: HACK DE PLANEET

HACK DE PLANEET
HACK DE PLANEET

Als je van deze Instrucable hebt genoten en elke maand een doos met elektronica en computertechnologieprojecten als deze rechtstreeks in je mailbox wilt hebben, sluit je dan aan bij de HackerBox-revolutie door HIER INSCHRIJVEN.

Reik uit en deel uw succes in de opmerkingen hieronder of op de HackerBoxes Facebook-pagina. Laat het ons zeker weten als je vragen hebt of ergens hulp bij nodig hebt. Bedankt dat je deel uitmaakt van HackerBoxes. Laat uw suggesties en feedback maar komen. HackerBoxen zijn JOUW dozen. Laten we er iets geweldigs van maken!

Aanbevolen: