Visar inlägg med etikett felsökning. Visa alla inlägg
Visar inlägg med etikett felsökning. Visa alla inlägg

16 mars, 2009

Nätverk/VMWare: Workstation v6.5.1 "bridged" mode fungerar inte

Förord
Denna artikel är för alla som använder VMWare Workstation och har problem med "bridged"-mode (sv. brygga) nätverk. Jag har nämligen själv haft stora problem med detta sedan jag uppdaterade min VMWare Workstation från v5.5.x till v6.5.1. Innan dess fungerade "bridged" helt utan problem så när det inte längre fungerade efter uppdateringen misstänkte jag fel i konfigurationen.

Tips: På följande webbsida Workstation 6.5 - Networking is not working on VM in "bridged" mode [1] verkar det som om någon har ett likadant problem som jag hade. Det är ett forum på VMWares webbsida på engelska. Efter att jag läste där fann jag min lösning.

Introduktion
Idag används virtualisering för fullt både på hemdatorer och på små till stora företag. Företaget VMWare [2] är en av de största aktörerna inom detta område och är mycket populärt bland utvecklare som kräver stabila utvecklingsmiljöer och företag som behöver köra mer mjukvara på färre hårdvaruenheter - oftast servrar. Det jag kommer gå igenom är hur jag fick igång "bridged" mode i VMWare.

Tekniken
Jag tänker inte gå in på djupet om virtualisering men kort och gott kan man säga att man vi får möjlighet att installera flera operativsystem (gäst-operativsystem) på ett ensamstående operativsystem (värd-operativsystem). Dessa kallar vi i fortsättningen för värd och gäst. T.ex så kör jag Windows XP Professional som värd och mjukvaran VMWare Workstation (i fortsättningen kallar jag denna endast för VMWare-miljön) med Ubuntu 8.10, Windows Server 2003 (student edition), Windows Server 2008, extra installation av Windows XP Professional, Windows Vista 64-bit.


(Klicka på bilden för att förstora) Vy över hur systemet delvis är uppbyggt.

Problemet
Mitt problem var att jag inte fick "bridged" mode att fungera korrekt. Jag prövade med "NAT" och "Host-only" som nätverkstyp i VMWare-miljön men inget fungerade. Systemen fick inte någon IP-adress via DHCP utan de fick istället en annan privat IP-adress från en vmnet-adapter. Jag prövade även att sätta IP-adress manuellt men ingen lycka där heller.

Vägen mot lösningen
När jag läste på forumet jag nämnde ovan [1] så tänkte jag att det kanske beror på att VMWare-miljön inte känner igen mitt fysiska Gigabit-gränssnitt till nätverket. I forumet läste jag att man skulle testa stänga av den automatiska bryggningen (eng. Automatic Bridging) och se efter i registret på värd-datorn i nyckeln HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VMnetBridge\Parameters\Adapters och kontrollera vilka adaptrar som fanns tillgängliga.

Jag fann inte något som var till nån nytta så jag började leta efter inställningar i VMWare-miljön. Till slut fann jag rätt menyalternativ.
Workstation v6.5.1:
Edit -> Virtual Network Editor
Då öppnas följande fönster:

(Klicka på bilden för att förstora) Gå till fliken "Automatic Bridging" och kryssa bort alternativet "Automatically choose an available physical network adapter to bridge to VMnet0".

Notis: När VMWare-miljön valde ett gränssnitt automatiskt åt mig valdes Microsoft Loopback Adapter vilket är helt fel. Det använder jag när jag konfigurerar och programmerar Cisco routrar i GNS3/Dynamips och vill ha åtkomst till mitt riktiga nätverk.

Som nästa steg måste man manuellt välja vilket fysiskt gränssnitt man använder på sin värd-dator. Det visas i följande fönster:

(Klicka på bilden för att förstora) I listen för VMnet0 väljer man sitt fysiska gränssnitt för nätverket. Jag själv har ett integrerat nätverkskort på mitt moderkort som är av typen NVIDIA nForce. Chansen är stor att ni har det likadant eller så har ni troligen DLink, Linksys, Cisco, Netgear Fastethernet Adapter eller liknande.

Tryck på knappen Apply och sedan OK för att spara ändringarna.

Testa
Nu kan ni testa att starta ert gäst-system igen och välja "bridged" som typ för nätverkåtkomst i VMWare-miljön. Allt fungerar perfekt för mig nu och jag får nu min efterlängtade IP-adress via DHCP som körs på routern i diagrammet högst upp.

Äntligen kan jag börja arbeta som vanligt igen när jag utvecklar dynamiska webbsystem och när jag kör Ciscosimulering i GNS3.

Resultat
Här nedanför visas resultatet av mina ändringar. Det är ett utdrag från terminalen i Ubuntu som visar min aktuella IP-adress.


(Klicka på bilden för att förstora) Verifiera att man fått rätt IP-adress.


Slutord
Tänk att lösningen på problemet var så enkelt egentligen. Jag hade problemet i tre veckor innan jag på riktigt orkade leta efter en lösning. Det hjälpte verkligen att söka på Google och läsa i forumet på vmware's webbsida.


Referenser
[1] http://communities.vmware.com/thread/197994?start=0&tstart=0
[2] http://www.vmware.com/

17 februari, 2008

Nätverk: Lathund för koppling av nätverk

Förord
Detta kommer vara en artikel som uppdateras med tiden tills jag känner att grunderna för koppling av ett nätverk har lärts ut. Eventuella påbyggnader kan komma i framtida artiklar men det är ännu inte bestämt.

Introduktion
Detta är några av grunderna för koppling av ett nätverk. Det kan vara bra att veta för nybörjare och som en referens för de som inte byggt och kopplat ett nätverk under lång tid. I artikeln kommer jag endast gå igenom koppling av Ethernet koppar 100Mbit. För er som inte riktigt har förstått vad detta är för något kan jag tala om att detta används när man ska koppla ihop datorer och annan IT utrustningn till ett nätverk (t.ex Internet) så att enheterna kan kommunicera med varandra med olika protokoll (regler) för hur trafiken får skickas. Ett vanligt exempel är en dator som är kopplad till ett ADSL-modem som sedan dirigerar trafiken ut på Internet. Ett annat exempel är om man ska ha ett LAN-party, även känt som LAN. Där kopplar man ihop mängder med datorer, switchar (och även routrar ibland) för att t.ex spela spel mot varandra.

Vad är ett LAN?
Ett LAN (Local Area Network) är ett lokalt nätverk som används för att kommunicera mellan flera IT enheter. Nätverket rör sig inte i ett stort geografiskt område som Internet (WAN) eller ett stadsnät (MAN) utan endast på en liten plats i en eller flera närliggande byggnader. För att koppla ihop dessa används vanligen kopparkablar som sedan kopplas till en knutpunkt/nav (hub/switch) som kopplar ihop alla enheter till ett nät av värdsystem - datorer.

Typer av kablar
Det finns väldigt många typer av kablar men de jag snabbt ska gå igenom är vanliga kopparkablar som klarar av hastigheterna 10-, 100- och 1000Mbit. Det sistnämnda kan även kallas Gigabit. Inom denna kategorin finns raka (straight-through) och korsade (crossover) kablar som kan användas för olika ändamål.
  • Rak: Tillåter endast kommunikation åt ett håll åt gången och alltså inte samtidigt. Detta kallas för halv-duplex (half-duplex). Det betyder enkelt förklarat att mottagaren måste vänta innan man får sända tillbaks. Med detta kan man uppnå maximal hastighet åt ett håll. För att koppla ihop minst två datorer krävs en knutpunkt/nav (hub/switch/[router]) eller en korsad kabel som nämns här nedanför.
  • Korsad: Kommunikation åt båda riktningarna samtigt skapar full-duplex vilket betyder att man kan koppla två datorer direkt mellan varandra med en enda kabel utan en knutpunkt. I teorin kan man använda 200Mbit totalt: 100Mbit åt vardera riktning.
Varför krävs olika typer av kablar vid olika enheter
I lathunden ni läser just nu tänker jag även gå igenom hur tekniken fungerar för att ni lättare ska förstå sambandet. I Cat5 (och även andra) kablar finns det fyra stycken ihopsurrade koppar-kabel-par men det är bara två av dem som används vid 10/100Mbit för sändning och mottagning av datasignaler med halv-duplex. Med full-duplex används alla fyra kabelparen, med två kabelpar som sköter sändning och två kabelpar som sköter mottagning, vilket skapar en kollisionsfri kommunikationslänk åt båda riktningarna för både sändning och mottagning.

Fyra kabelpar blir totalt åtta stycken olikfärgade "mini-kablar" (jag kommer kalla dessa små kablar för "mini-kablar" i texten framöver för att underlätta läsningen). De är numrerade från 1 - 8. Om man tittar på nätverkskabeln från framsidan och håller klämman uppåt så är pin 1 längst till vänster (brukar vara grön eller orange beroende på vilken standard som används). Vid halv-duplex (rak) används pin 1 och 2 för att sända signaler (TX - Transmit) och pin 3 och 6 för att ta emot signaler (RX - Recieve).

Håll nu tungan rätt i mun och läs långsamt. Försök gärna att rita upp en bild när ni läser texten för att lättare förstå.

Om man vill koppla ihop en dator med en annan dator, med en rak kabel, så uppstår problem eftersom nätverkskorten på båda datorerna har sina pins på samma positioner. När man då ska koppla en rak kabel mellan dem så går de pins (1 och 2) som sänder signalerna från NätverkskortA -> genom kabeln mot -> NätverkskortB och de pins (1 och 2) som nu får emot signalerna kan inte eftersom det är de pins som sänder på den andra datorn. Därför uppstår en krock och signalerna kan bara skickas men ingen vet hur de ska tas emot. Signalerna skulle egentligen ha färdats från nätverkskortA pin 1 och 2 mot pin 3 och 6 i nätverkskortB. NätverkskortB skulle då ta hand om informationen som mottogs och sedan skicka svar (vanligtvis skickas en typ av svar) tillbaka från pin 1 och 2 till nätverkskortA pin 3 och 6. Då hade vi haft en sluten länk och signalerna hade kunnat cirkulera.

Lösningen på problemet är att då använda en korsad kabel, som även medför full-duplex (om alla fyra kabelparen används), som vrider om mini-kablarna så att pin 1 -> pin 3 och pin 2 -> pin 6. Kort sammanfattat så går sändarens pins till motsatta pins hos mottagaren.

Varför används då raka nätverkskablar till en hub/switch?
En switch (mitt val) har funktionalitet som gör att den kan automatiskt känna av om fel typ av kabel används. Eftersom en switch bara vidarebefodrar signaler så räcker det med raka kablar men om man skulle råka använda en korsad så brukar switchen vara så "smart" att den känner igen detta och byter plats på pins dynamiskt eller vad man kan kalla det. Den flyttar inte på pinnarna fysiskt men logiskt i switchen så flyttas de om. Den del som tar hand om detta är en MDI-X krets som man upptäcker genom att leta efter ett markerat X på nätverksporten på switchen. En av termerna för detta är "intern-korsning" eller "internal-crossover" på engelska.

Varför används korsade nätverkskablar vid koppling till en router?
Se routern ungefär som en dator med en eller flera nätverkskort. En avancerad dator med diverse specificerade uppgifter men den vanligaste är att "routa" trafik - bestämma vart signaler skall skickas - alltså till vilka nät. Därför fungerar portarna som ett nätverkskort och om detta kan ni läsa i ett stycke här ovanför där det beskrivs lite mer detaljerat men bara tillräckligt för att ni ska kunna förstå.

Notis: på Wikipedia.org har jag läst att i nyare varianter av nätverkskort så kan de också automatiskt känna igen vilken typ av kabel som används och sedan rätta till problemet därefter. Nackdelen är att båda nätverkskorten måste stödja funktionen.

Kablarna som klarar upp till 100Mbit heter Cat5 eller Cat5e och används vanligen för 100BASE-TX Ethernet. Det finns även specifikationer som stödjer Gigabit men för den högre hastigheten rekommenderas Cat6 som har mycket strikta regler för kablarnas virningar och skydd mot störningar.

När ska man använda de olika typerna

Rak (straight-trough)Korsad (crossover)
Switch till RouterSwitch till Switch
Switch till PC eller serverSwitch till hub
Hub till PC eller serverHub till hub

Router till Router

PC till PC

*Router till PC

Sammanfattat så ska man använda korsade kablar vid lika enhetstyper eller när man kopplar en router till en PC (*). Det sistnämnda är bara viktigt när man kopplar till äldre routrar, eller nätverkskort som inte känner av detta automatiskt. Raka kablar används vid olika enheter.

Adressering
För att kunna identifiera en enhet på ett nätverka används MAC-adresser och/eller IP-adresser. Dessa måste vara unika för att mjuk- och hårdvara ska kunna dirigera om trafiken till rätt destination. Hur man sätter upp ett enkelt dator till dator (en-till-en) nätverk och nätverk med flera datorer och dess adressering kommer jag försöka skriva om i en framtida artikel.

Felsökning
  • Det vanligaste felet i ett nätverk är att kabeln har lossnat. Kontrollera enheten (dator, skrivare, ...) och navet vid andra änden.
  • Har ni precis satt upp ett eget nätverk och enheterna inte kan hittas är den största missen att man har konfigurerat fel IP-adress och/eller subnätmask. De vanligaste inställningarna för detta är IP:192.168.1.x, Subnätmask:255.255.255.0
  • Om allt stämmer men fortfarande inte fungerar så bör ni kontrollera eventuella brandväggar, antivirus, och andra liknande program. Det som rekommenderas för ett LAN för spelande är att avaktivera dessa program tills ni har spelat färdigt.
  • Använder ni en router som gateway måste ni kanske öppna upp vissa portar för att vissa spel och program ska fungera.
Tillägg 9/4-08
Jag har reviderat innehållet lite och ändrat några stavfel. En punkt har lagts till som beskriver varför det krävs olika kabeltyper för diverse enheter. Det är en väldigt informationsrik del.

Källa och referenser
Jag har lärt mig det mesta i kursen CCNA/CCNP som är en typ av Cisco kurs. Cisco är ett stort ledande företag inom nätverksdesign- och teknik. Jag har även läst litegrann på Wikipedia för att se till att min information är så korrekt som möjligt och försökt komma ihåg hur jag gjort när jag byggt ett nätverk. Även fast jag har använt mina egna ord och försökt förklara så gott jag kan så finns det alltid ett annat ställe där det beskrivs mer ingående för de som vill veta mer.

Informationen som anges på Wikipedia ska man ta med en nypa salt men genom att jämföra med sin utbildning och/eller om det man har läst på inom området så kan det vara en utmärkt resurs som kan användas för att felsöka mina egna beskrivningar innan de publiceras.

Intressant läsning anges här nedanför:
Testning av 10Gbps nätverk i Chile (engelska)
Olika typer av nätverks media (engelska)
En uppsats skriven om nätverk (student, svenska)
Wikipedia - Ethernet (svenska)
Wikipedia - LAN (svenska)
Wikipedia - Duplex (svenska) (engelska)

Välkomna till bloggen

Välkomna ska ni vara kära besökare. Jag skriver om IT för att det är kul och för att jag vill dela med mig av information och kunskap. Jag försöker hålla bloggen så kategoriserad som möjligt för att ni enklare ska hitta intressanta länkar och artiklar.