PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Langsame DNS Auflösung (Frage aus der FAQ)


Treibsand
2005-12-01, 11:40:23
Hi, ich denke ich habe so ein Problem weil die Websites unter Windows immer wesentlich schneller laden als unter Suse 10, beidesmal mit dem Firefox. In der FAQ habe ich dazu folgenden Tip gelesen:



emerge dnsmasq

deine normalen dns server in ne /etc/resolv.conf.dnsmasq (oder ähnliches) eintragen
kannst auch schnellere von anderen isps nehmen

und in die /etc/resolv.conf 127.0.0.1

des ding is nämlich gar nicht übel



Sagt mir als Linux Neuling aber erst mal so gut wie garnichts. Kann mir das bitte jemand genau erklären was ich jetzt da machen muss damit das alles etwas flüssiger wird? Wäre echt supernett von euch, Danke!!!

klutob
2005-12-01, 12:37:51
Hi,

Erst mal "dnsmasq" installieren. Entweder mit yast, dazu das Paket unter http://ftp.opensuse.org/pub/opensuse/distribution/SL-10.0-OSS/inst-source/suse/i586/dnsmasq-2.22-3.i586.rpm downloaden und das "rpm" Paket im Konqeror ausführen. Oder du hast schon einen "apt" Klienten installiert (Kynaptic/Synaptic), dann einfach "dnsmasq" automatisch installieren lassen.

Danach in die Konsole gehen und mittels

su -

als Superuser einloggen. In der Konsole folgende Befehle ausführen
1. Backup der "resolv.conf" anlegen/Nameserverkonfig (DNS) für "dnsmasq" anlegen :

cp /etc/resolv.conf /etc/resolv.conf_dnsmasq

2. "dnsmasq" konfigurieren:

kwrite /etc/dnsmasq.conf

Dort den Anschnitt

# Change this line if you want dns to get its upstream servers from
# somewhere other that /etc/resolv.conf
#resolv-file=

suchen und die vorhin angelegte Datei mit Pfad eintragen. Also muß der Abschnitt entsprechend geändert werden:

# Change this line if you want dns to get its upstream servers from
# somewhere other that /etc/resolv.conf
#resolv-file=
resolv-file=/etc/resolv.conf_dnsmasq

Jetzt die Datei abspeichern und "kwrite" schließen.
3. "dnsmasq" die DNS-Anfrage zuweisen

kwrite /etc/resolv.conf

alle Einträge löschen und durch

nameserver 127.0.0.1

ersetzen. Speichern nicht vergessen.
4. "dnsmasq" manuell starten + Überprüfung der einwandfreien Funktion:

/etc/init.d/dnsmasq start

Wenn du alles richtig gemacht hast, funtioniert jetzt alles. :D
Also benchen wir mal die DNS Auflösung.

dig www.heise.de

; <<>> DiG 9.3.1 <<>> www.heise.de
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28945
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.heise.de. IN A

;; ANSWER SECTION:
www.heise.de. 83772 IN A 193.99.144.85

;; Query time: 104 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Dec 1 12:20:02 2005
;; MSG SIZE rcvd: 46

Die erste DNS Auflösung (Query time) ohne Cache braucht also hier 104 ms.
Zweite Anfrage sollte jetzt gecacht werden also noch mal "heise.de" abfragen

dig www.heise.de

; <<>> DiG 9.3.1 <<>> www.heise.de
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24043
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.heise.de. IN A

;; ANSWER SECTION:
www.heise.de. 83761 IN A 193.99.144.85

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Dec 1 12:20:13 2005
;; MSG SIZE rcvd: 46

Scheint zu passen!

5. "dnsmasq" automatisch bei jedem Start aktivieren.
Öffne mal Yast gehe zu System-->Runleveleditor suche dort den Dienst "dnsmasq" aktiviere diesen und bestätige. Wenn du bisher deine Nameserver über eine angeschlossenen Router bezogen hast, so must du noch verhindern, das bei jedem Start die "resolv.conf" überschrieben wird.

kwrite /etc/sysconfig/network/dhcp

Den Abschnitt

## Type: yesno
## Default: yes
#
# Should the DHCP client modify /etc/resolv.conf at all?
# If not, set this to "no". (The default is "yes")
#
# resolv.conf will also stay untouched when MODIFY_RESOLV_CONF_DYNAMICALLY
# in /etc/sysconfig/network/config is set to "no".
#
DHCLIENT_MODIFY_RESOLV_CONF="yes"

finden, lesen, verstehen und zu

## Type: yesno
## Default: yes
#
# Should the DHCP client modify /etc/resolv.conf at all?
# If not, set this to "no". (The default is "yes")
#
# resolv.conf will also stay untouched when MODIFY_RESOLV_CONF_DYNAMICALLY
# in /etc/sysconfig/network/config is set to "no".
#
DHCLIENT_MODIFY_RESOLV_CONF="no"

abändern. Wenn du direkt über PC-Modem mit dem I-net verbunden bist, mußt du entsprechend den "rpppoe" Dienst konfigurieren, so daß dieser nicht bei jedem Start die "resolv.conf" überschreibt.

Falls alles in die Hose geht, entweder nochmal fragen, oder

cp /etc/resolv.conf_dnsmasq /etc/resolv.conf

um den Ursprungszustand wiederherzustellen.

Teibsand
2005-12-01, 13:30:16
Wow, vielen herzlichen Dank für diese tolle und ausführliche Erklärung, das druck ich mir jetzt erst mal aus und dann gehts an die Arbeit :)

Treibsand
2005-12-01, 23:52:19
So, dank der absolut genialen Anleitung von klutob hab ich die Installation und Konfiguration ohne Probleme hinbekommen.

Allein, es hilft nicht viel oder besser gesagt nicht merklich. Die Webseiten bauen sich immer noch deutlich langsamer auf als auf dem gleichen Rechner unter WinXP.

Also beidesmal Firefox 1.0.7, einmal unter SUSE 10.0 und einmal WinXP SP2.

Unter Linux hat man den Eindruck dass die Übertragung kurz stockt wenn ich einen Link anklicke, also kurz anhält bevor es weitergeht, insgesamt dauert der Seitenaufbau geschätzt doppelt so lange wie unter XP. Rechner ist ein Intel PIII, 866 MHz, i815 Chipsatz.

Woran könnte das liegen oder ist es einfach so dass der Firefox unter Linux eben langsamer ist als unter XP?

Benedikt
2005-12-02, 00:47:17
AFAIK hat SUSE 10 IPv6 standardmäßig aktiviert (neue Internet-Protocol-Version).
Vielleicht liegt's ja daran, dass SUSE eben zuerst mal versucht, eine Domain in eine IPv6-Adresse aufzulösen, bevor es dann nochmal dasselbe mit IPv4 probiert.
Gib mal in Firefox in der Adressleiste about:config ein, und ändere den Eintrag network.dns.disableIPv6 mal auf true. Vielleicht hilft das ja...

ActionNews
2005-12-02, 08:42:15
Das hilft nicht nur vielleicht sondern garantiert!
Das Problem ist, dass dein ISP keine IPV6-DNS-Auflösung unterstützt. SuSE versucht nun standardmäßig über IPV6 die Server zu erreichen (z.b. www.3dcenter.de ). Dies versucht es einige Male. Scheitert dies (das dauert eingie Sekunden) versucht es dann erst über IPV4 die IP-Adresse zu holen.
Im Firefox wie oben beschrieben IPV6-Unterstützung abschalten und dann sollte das Internet wieder unter Linux rennen :).

CU Michael

Baxtor
2005-12-03, 00:43:14
hast du den MTU wert mal auf 1492 gestellt?falls du über netzwerkkarte ins netz gehst?

Gast
2005-12-03, 02:49:30
ich würde eher mal mittels yast (netzwerkkarte) deine bevorzugten (z.b. die, deines isp) dns-server eintragen!

Gast
2005-12-03, 11:21:24
Huh? Was soll man da genau wo eintragen? Und was soll das bringen?

nggalai
2005-12-03, 20:05:01
AFAIK hat SUSE 10 IPv6 standardmäßig aktiviert (neue Internet-Protocol-Version).
Vielleicht liegt's ja daran, dass SUSE eben zuerst mal versucht, eine Domain in eine IPv6-Adresse aufzulösen, bevor es dann nochmal dasselbe mit IPv4 probiert.
Gib mal in Firefox in der Adressleiste about:config ein, und ändere den Eintrag network.dns.disableIPv6 mal auf true. Vielleicht hilft das ja...
ipv6 lässt sich auch auf dem System generell ausschalten:

in /etc/modprobe.conf:

alias net-pf-10 off


Dann sollte der Linux-Rechner immer IPv4 verwenden.

Benedikt
2005-12-03, 23:06:27
ipv6 lässt sich auch auf dem System generell ausschalten:

in /etc/modprobe.conf:

alias net-pf-10 off


Dann sollte der Linux-Rechner immer IPv4 verwenden.
Was bewirkt dieser Befehl
alias net-pf-10 off

genau?

Gast
2005-12-03, 23:16:16
Also laut SUSE (Support Datenbank) geht das anders und zwar so:


Unter SUSE Linux 9.1 (genauer: mit Kernel 2.6.x) gibt es statt der Datei /etc/modules.conf jetzt die Datei /etc/modprobe.conf.

Wenn Sie unter SUSE Linux 9.1 IPv6 grundsätzlich deaktivieren möchten, müssen Sie in der Datei /etc/modprobe.conf die folgende Änderung vornehmen:

alias net-pf-10 ipv6

nach

alias net-pf-10 ipv6
install ipv6 /bin/true


http://portal.suse.com/sdb/de/2003/10/90_mozilla_ipv6.html

Was ist jetzt richtig?

nggalai
2005-12-04, 08:25:31
Ich würde nach der Support-Datenbank gehen. Meine "Lösung" habe ich irgend wann mal in einem Forum gefunden, ob die stimmt weiß ich nicht--jedenfalls ist bei mir die DNS-Auflösung auch ohne dnsmasq o.ä. flott.