[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: LAN med DHCP



Pelle Nilsson wrote:
> Hårdvaruupplägget är enklast möjliga, ett ADSL-modem
> (Bredbandsbolaget) med inbyggd switch, datorerna kopplade direkt till
> switchen (fast två av dem via ytterligare en switch). I hushållet finns
> 2 linux-datorer och 2 win-datorer. Alla datorerna får IP-adress
> dynamiskt med DHCP från Bredbandsbolaget, de två linux-datorerna förses
> dock med konstant domännamn med dyndns:


> [routing tabellen blir felaktig]

Det är egentligen inte routingtabellen, utan ARP-cachen. Man kan se det
som en form av oavsiktlig cache-poisoning av operatören;
Efter att gandalf och bilbo fått sina ip-adresser så informerar de även
sitt subnät om sina mac-adresser vid förfrågan.

Problemet är att även operatörens utrustning (på andra sidan ADSL länken)
besvarar arp-frågor för "dina" adresser, fast med *sin* mac-adress. Om
exempelvis bilbo frågar efter gandalfs mac-adress så hinner ibland routern
svara först.

Trafiken skickas därmed till routern, som skickar den tillbaka in i ditt
nät , och det går långsamt.

Prova att köra "arp -a" när nätet går snabbt och när det går långsamt så
ska du se att mac-adresserna varierar för dina burkar.

Lösning 1 är att sätta statiska mac-adresser, typ
bilbo# arp -s 85.225.220.143 00:11:22:33:44:55
gandalf# arp -s 85.225.220.144 00:11:22:33:44:66

(ersätt ip och mac enl. dina inställningar)

Problemet med detta är att adresserna byts ibland (hur stort problem det
nu är, oftast när man gör en dhcp-renew så får man samma adress man haft
tidigare). Det måste också göras på alla maskiner i ditt nät.



Lösning 2 är dock bättre; använd interna adresser mellan dina egna maskiner.

I linux sätter du upp ett extra virtuellt interface;

/etc/network/interfaces:

auto eth0
iface eth0 inet dhcp

auto eth0:1
iface eth0:1 inet static
        address 192.168.0.5
        netmask 255.255.255.0


Tilldela alla maskiner en adress i 192.168.0.x nätet.
Ordna till /etc/hosts så att de pekar på de nya adresserna.

För windows är problemet att man normalt sett inte kan ha en
dynamisk och statisk adress samtidigt. Men genom att att använda
registereditorn så går det att ordna till ändå, se instruktioner på
http://www.petri.co.il/configure_tcp_ip_to_use_dhcp_and_a_static_ip_address_at_the_same_time.htm


Nu har alla maskiner två adresser. Dels de interna 192.168.0.0/24
när de kommunicerar med varandra, och dels de dynamiskt tilldelade
för extern kommunikation (vilket även är default-routen).

Det ska även fungera med dyndns (kan ev. behöva någon inställning
så den vet vilket interface den ska ta den externa adressen ifrån).

Kör du samba mellan windows och linuxburkarna? Lägg till i
c:\windows\system32\drivers\etc\lmhosts: 192.168.0.5  gandalf #PRE
Kör nbtstat -R för att ladda om, och testa att pinga gandalf.


Mvh,
 Stefan



Reply to: