Innehållsförteckning:

LLDPi - Raspberry Pi Network Tool (Colorado State University): 7 steg
LLDPi - Raspberry Pi Network Tool (Colorado State University): 7 steg

Video: LLDPi - Raspberry Pi Network Tool (Colorado State University): 7 steg

Video: LLDPi - Raspberry Pi Network Tool (Colorado State University): 7 steg
Video: Network Monitoring - LibreNMS 2024, November
Anonim
LLDPi - Raspberry Pi Network Tool (Colorado State University)
LLDPi - Raspberry Pi Network Tool (Colorado State University)

LLDPi -projektet är ett inbäddat system tillverkat av en Raspberry Pi och LCD som kan hämta LLDP -information (Link Layer Discovery Protocol) från angränsande enheter i ett nätverk som systemnamn och beskrivning, portnamn och beskrivning, VLAN -namn och IP -hantering adress. I denna handledning kommer vi att gå igenom de nödvändiga stegen för att sätta ihop ett LLDPi -system som består av följande delar:

1x Raspberry Pi 2 B (eller nyare) + microSD-minneskort:

1 x Elecrow 5-tums TFT LCD HDMI-skärm:

Alternativt kan du använda den här skärmen:

1 x Avstängningskrets (använd med knapp):

1 x 3A UBEC (DC-DC spänningsregulator):

1 x batteriladdningsmodul:

4 x 18650 batterier:

1 x kvinnligt Power Jack-uttag:

1 x vippbrytare:

2 x korta mikro-USB-kablar:

kabelanslutningar:

DU KOMMER ATT BEHÖVA ETT LÅDAJÄRN OCH SÄLJARE, OCH WIRE STRIPPERS!

Spole med 3D-filament för att skriva ut ett hölje för RamPi *(Du behöver åtkomst till en 3D-skrivare)

11 x 1/4 maskinskruvar (för att hålla allt på plats)

microSD -adapter för att läsa/skriva från PC med bildskärm, HDMI -kabel, tangentbord och mus för att installera Raspberry Pi

Steg 1: 3D -utskriftsfodral

3D -tryckfodral
3D -tryckfodral
3D -tryckfodral
3D -tryckfodral

För att spara lite tid lägger jag detta som det första steget eftersom 3D-utskrift förmodligen kommer att vara det längsta steget i denna process.

När du har hittat din favoritfärg för att skriva ut filament som är kompatibel med 3D-skrivaren du ska använda, ladda sedan ner dessa 4 filer och börja skriva ut dem. Jag använde ABS som kan orsaka snedvridning och inkonsekventa resultat så du kan behöva experimentera för att hitta rätt material. Du kan behöva använda en skalfaktor för att skriva ut dessa i rätt storlek

(Jag var tvungen att skala ner objekten till 0,1%.)

Steg 2: Installera Raspbian på SD -kort

Du måste ha en god förståelse för Linux för att kunna göra en LLDPi.

Gå till länken nedan och ladda ner den senaste versionen av Raspbian with Desktop.

www.raspberrypi.org/downloads/raspbian/

Använd din dator för att skriva OS -bilden på microSD -kortet. Packa upp Raspbian -filen och gå till följande länk för att se instruktioner specifika för det operativsystem som du använder för att installera bilden.

learn.sparkfun.com/tutorials/sd-cards-and-…

Nu borde vi kunna ansluta microSD -kortet till Raspberry Pi 3 och starta upp det. Se till att hallon pi är ansluten till en bildskärm och tangentbord och har en internetanslutning när du går igenom den här guiden.

Steg 3: Konfigurera Raspbian på Raspberry Pi

Först ska vi se till att tangentbordet fungerar korrekt genom att ange vilket språk du ska använda. Kör följande kommando, där $ är kommandoradsraden, skriv inte in det.

$ sudo raspi-config

Detta bör nu ta oss till en skärm där vi kan redigera lokaliseringsalternativen, det borde vara det fjärde på listan. Nu vill vi välja Ändra språk, gå ner i listan och klicka på mellanslagstangenten på språket som heter en_US. UTF-8 UTF-8 och ställ in det som standard på nästa skärm. Vi måste också ändra tidszonen genom att gå tillbaka till lokaliseringsalternativen och välja Ändra tidszon och ställa den till America / Denver

Nu måste vi gå in i Boot Options, Desktop / CLIDesktop Autologin för att pi ska autologin vid uppstart. Låt oss gå in i Avancerade alternativ och välj Expandera filsystem för att använda hela SD -kortet. Vi kanske också vill ändra användarlösenordet genom att välja det första alternativet, Ändra användarlösenord. Det rekommenderas starkt att skriva ner lösenordet, glöm det inte! Standardlösenordet är hallon. Tryck sedan på Slutför för att avsluta. Raspberry Pi kan behöva starta om för att ändringarna ska träda i kraft. Öppna nu en terminal och kör följande kommando och välj denna uppsättning alternativ när du uppmanas,

$ sudo dpkg-omkonfigurera tangentbordskonfiguration

Generisk 105-nyckel (Intl) PC

Annat -> då-> engelska (USA)

Standard för tangentbordslayout

Ingen komponentnyckel

Nej

Vårt nästa steg är att uppdatera och uppgradera Raspbian till den senaste versionen. För att göra detta öppnar du bara en terminal och skriver, $ sudo apt -get -y update && sudo apt -get -y upgrade

Om det sista kommandot inte avslutas ordentligt eller ger ett meddelande om ett trasigt paket, kan vi behöva starta om och köra kommandot igen. Vänta tills det är klart och kör sedan följande kommandon,

$ sudo apt -get -y uppdatering

$ sudo apt -get install -y vim tshark tcpdump ethtool gawk

På frågan "Ska icke-superanvändare kunna fånga paket?", Tryck på Ja.

Steg 4: Konfigurera LCD -skärmen

Konfigurera LCD -skärmen
Konfigurera LCD -skärmen
Konfigurera LCD -skärmen
Konfigurera LCD -skärmen

Nästa steg blir att konfigurera LCD -skärmen för att fungera med Raspberry Pi. Stäng av Raspberry Pi, montera LCD -skärmen och slå på den igen så att den matchar bilderna ovan. Se till att HDMI -portarna ligger i linje med bilden och sätt i HDMI -kontakten.

Därefter måste vi utföra följande kommandon för att ladda ner och installera drivrutinen för LCD -skärmen.

$ git-klon

$ cd Elecrow-LCD5

$ chmod +x Elecrow-LCD5

$ sudo./Elecrow-LCD5

och skriv y för att starta om. När enheten har startat om måste vi också göra ändringar i skärmriktningen.

$ sudo vim /boot/config.txt

och leta mot slutet av en fil efter en rad som

display_rotate = 0

och ändra det till

display_rotate = 3

Starta om Raspberry Pi, vänta tills Raspberry Pi startar upp igen och öppna en terminal. Och kör följande kommando för att installera ett sätt att kalibrera pekskärmen.

$ sudo starta om

$ sudo apt-get install -y xinput-kalibrator xinput xserver-xorg-input-evdev

X- och Y -axeln på pekskärmen måste bytas så vi utför följande kommandon för att slutföra justeringen av skärmen.

$ xinput-set-prop 'ADS7846 Pekskärm' 'Evdev Axes Swap' 1

$ xinput-set-prop 'ADS7846 Pekskärm' 'Evdev Axis Inversion' 1 0

Hoppa över detta om det INGEN FEL finns med de tidigare kommandona

#################################################################

Om det ÄR fel efter att ha utfört kommandona ovan kan du försöka göra dessa ändringar i drivrutinsfilerna som används av Raspberry Pi. Beroende på vilken Raspberry Pi du använder för denna LLDPi kan det finnas några små skillnader i inställningen av LCD -drivrutinerna och/eller andra inställningar. När du konfigurerade detta med en Raspberry Pi 3 var det ett problem med LCD -skärmen med följande konfigurationsfil

/usr/share/X11/xorg.conf.d/40-libinput.conf

När den skulle ha använt denna konfigurationsfil för en annan drivrutin evdev

/usr/share/X11/xorg.conf.d/10-evdev.conf

För att åtgärda detta kör du följande kommandon,

$ sudo mv /usr/share/X11/xorg.conf.d/10-evdev.conf /usr/share/X11/xorg.conf.d/45-evdev.conf

$ sudo starta om

Försök sedan köra kommandona för att byta X- och Y -axeln igen.

$ xinput-set-prop 'ADS7846 Pekskärm' 'Evdev Axes Swap' 1

$ xinput-set-prop 'ADS7846 Pekskärm' 'Evdev Axis Inversion' 1 0

Om detta fortfarande inte fungerar måste du leta efter ett annat sätt att konfigurera pekskärmen korrekt.

###############################################################

Om kommandona fungerar och pekskärmen fungerar korrekt, fortsätt sedan med att redigera följande fil för att ha dessa fyra kodrader. $ vim /home/pi/.config/lxsession/LXDE-pi/swapAxis.sh

#!/bin/bash

xinput --set-prop 'ADS7846 Pekskärm' 'Evdev Axes Swap' 1

xinput --set-prop 'ADS7846 Pekskärm' 'Evdev Axis Inversion' 1 0

avsluta 0

Glöm inte att ge skriptet rätt filtillstånd. $ sudo chmod 755 /home/pi/.config/lxsession/LXDE-pi/swapAxis.sh

Nästa kommando säkerställer att appen startar och axeln byts ut korrekt varje gång Pi startar upp.

$ sudo vim /home/pi/.config/lxsession/LXDE-pi/autostart

Lägg till följande 2 rader,

@/home/pi/.config/lxsession/LXDE-pi/swapAxis.sh

@lxterminal

Steg 5: Bygg kretsen

Bygg kretsen
Bygg kretsen
Bygg kretsen
Bygg kretsen
Bygg kretsen
Bygg kretsen

Gör reda på lödkolven, ta tag i kabelanslutningarna och börja bygga kretsen som gör att 18650 -batterierna kan driva LLDPi. Börja med det kvinnliga eluttaget och löd några kabelkontakter för att fästa den på ingångsänden på UBEC. Då måste vi skaffa en manlig mikro -usb -kabel och ha den ansluten till den andra änden av UBEC som visas på bilden. UBEC bör ha stiftet inställt på hur det visas på närbilden. Ta sedan uppsättningen 18650 batterier, anslut dem parallellt och löd en kabelkontakt redo att anslutas till batteriladdningsmodulen. Ordna det du har gjort hittills av kretsen i höljet tillsammans med batterierna.

Innan du går vidare, se till att allt fungerar som förväntat hittills. Om allt fungerar är det klart att montera!

Steg 6: Sätt ihop allt

Lägg samman allt
Lägg samman allt
Lägg samman allt
Lägg samman allt
Lägg samman allt
Lägg samman allt

Skruva nu fast batterilocket på fodralet. Batteriladdningsmodulen ska ha UBEC ansluten via mikro -USB och batterierna på andra sidan genom ett par kabelkontakter. Den andra USB -kabeln på batteriladdningsmodulen leder till avstängningskretsen. Förbered vippomkopplaren med en kabelkontakt som kopplas till avstängningskretsen. Avstängningskretsen kommer också att ha 2 andra ledningar till hallon pi för att signalera en avstängningssekvens, samt förse ström via den andra större USB till hallon pi, som visas i de senaste par bilderna. Den större USB som används på bilden behövs eftersom den levererar 2,1 ampere medan den andra bara levererar 1 ampere.

Om du har problem med att få komponenterna att passa inuti fodralet kan du försöka ta bort batterilocket och stapla hårdvaran där.

Följ den här länken för att få anvisningar om hur du konfigurerar programvara och hårdvara för att ge hallon pi en graciös avstängningsknapp.

mausberry-circuits.myshopify.com/pages/set…

När du har gjort allt för den graciösa avstängningskretsen, se till att du skjuter vippomkopplaren in i facket på sidan av höljet innan du sätter fast hallon-pi med skruvar, sedan passar allt in i fodralet redo att lägga till den redan fungerande LCD-skärmen och sätt på locket på höljet med skruvarna.

Steg 7: Kodning av LLDPi -applikationen

Kodning av LLDPi -applikationen
Kodning av LLDPi -applikationen
Kodning av LLDPi -applikationen
Kodning av LLDPi -applikationen

Nu när vi har konfigurerat hårdvaran kan vi fortsätta att räkna ut koden som skapar ett GUI och samlar all information vi behöver. Filerna med koden som är nödvändig för denna applikation finns längst ner på sidan. Du bör ladda ner dem och se till att de är i rätt respektive katalogvägar, som visas nedan.

Se till att ändra filnamnen med ett.txt -tillägg till ett.sh -tillägg

$ mkdir/home/pi/LLDPi

$ cd/home/pi/LLDPi

$ touch /home/pi/LLDPi/lldp.sh

$ touch /home/pi/LLDPi/getSWITCHinfo.sh

$ touch /home/pi/LLDPi/getVLANinfo.sh

$ touch /home/pi/LLDPi/LLDPiGUI.py

$ touch /home/pi/LLDPi/reset.sh

*** Kan behöva köra detta för att göra skripten ovan körbara

$ chmod 755 filnamn

$ touch tshark.cap

$ sudo chown root: root tshark.cap

$ touch tcpdump.cap

$ touch displayLLDP.txt

$ touch progess

[Valfritt] Detta kommer att göra en bekväm ikon på skrivbordsskärmen som användaren kan dubbelklicka på för att starta LLDPi-programmet. Redigera följande fil för att skapa ikonen och se till att den innehåller följande innehåll.

$ vim /home/pi/Desktop/LLDPi.desktop

[Skrivbordspost]

Namn = LLDPi

Kommentar = KÖR LLDPi -skript

Exec =/home/pi/LLDPi/LLDPiGUI.py

Terminal = sant

Typ = applikation

*Om du har en bild att använda som en ikon lägger du till en rad i filen LLDPi.desktop som återspeglar katalogvägen till bilden,

Ikon =/absolut/sökväg/till/bild/fil

Testa skripten genom att kontrollera utmatningen av./LLDPiGUI.py eller genom att klicka på ikonen på huvudskärmen

$ vim ~/.bashrc

Lägg till en rad som den nedanför i slutet av ~/.bashrc för att starta LLDPi -appen vid starttid. /home/pi/LLDPi/LLDPiGUI.py

Och det borde vara det, RamPi ska vara komplett och redo att testa.

Rekommenderad: