[SOLVED] resolv.conf wird bei Systemstart überschrieben

  • Hallo Community,


    hab mal wieder ein kleines Problem. Meine resolv.conf wird bei jedem Systemstart überschrieben. Es wird dann immer die IP des Routers eingetragen, doch mit dieser funzt die Namensauflösung nicht.


    Wenn ich die Nameserver IP von Arcor eintrage dann geht's. Jedoch wird diese, wie bereits erwähnt, dann immer wieder überschrieben.


    Ich verwende DHCP und hab bei meinem Router (CNET Broadband Router CNIG-914) keine Möglichkeit die Nameserver IP einzutragen. Unter Win-Doof muss ich das auch nicht.


    Kann mir einer weiterhelfen?


    Cowboy

  • Das ist auch okay, da der Router normalerweise die Abfragen an den Nameserver weiter gibt.

  • leider schreibst du nicht auf welchem System das Problem auftritt. Auf meiner alten RH gibt es Config-Files wie
    '/etc/sysconfig/network-scripts/ifcfg-ppp0'. Dort kannst du mit

    Code
    1. PEERDNS='yes'

    festlegen ob das 'resolv.conf' ge'updated' werden soll oder nicht.

  • Servus,


    Quote

    Original von sparkie
    leider schreibst du nicht auf welchem System das Problem auftritt.


    Nun, da er in der Rubrik LinVDR postet, ist es doch mehr als wahrscheinlich, dass er LinVDR benutzt, oder?


    Das Problem ist, dass dir dein Router per DHCP auch (fälschlicherweise) den DNS-Server-Eintrag übermittelt -- nämlich sich selbst. Es ist gewollt und gut so, dass DHCP die resolv.conf automatisch mit anpasst, weil dies eben bei DHCP i.d.R. notwendig ist.


    Der sinnvollste Weg ist, das Problem beim Router zu lösen, denn der ist die Ursache. Entweder er muss (wie alle anderen auch) die DNS-Abfragen weiterleiten, oder aber er darf sich selbst nicht als DNS angeben, sondern muss die IP-Adresse des wahren DNS weiterleiten.


    Zur Not kannst du den DHCP-Client anpassen. Da der Router das Problem ist, sollte aber die Problembehebung dort Priorität haben. In /usr/share/udhcpc/default.script ist festgelegt, was der Client tut, wenn er per DHCP eine Adresse bekommt oder sie erneuert wird. Entweder änderst du dort einfach den Pfad zur /etc/resolv.conf in /etc/resolv.conf.dhcp, dann lässt der DHCP-Client deine eigentliche resolv.conf in Ruhe. Oder aber du kommentierst den Abschnitt im Script aus, in dem der Nameserver in die resolv.conf eingetragen wird.


    Viele Grüße, Mirko

  • @ cooper


    Erst mal danke für die Tips. Habe es bis jetzt leider nicht geschafft meinem Router das übermitteln seiner eigenen IP abzugewöhnen. :-(


    Aus diesem Grunde habe ich versucht deinen Vorschlag umzusetzen.


    Habe in der Datei default.script die entsprechende Änderung gemacht, doch leider taucht der LinVDR-PC nun nicht mal mehr in der DHCP Client List des Routers auf. Demzufolge habe ich natürlich auch keinen Internetzugang geschweige Netzwerkzugriff mehr. War also ein ziemlicher Griff ins Klo. Muss nun erst mal nen Bildschirm anschliessen um das weider zu richten.


    Habe ich den Eintrag denn falsch gemacht??
    Kannst du mir vielleicht mal genau anhand der Datei zeigen wo ich die Zeilen auskommentieren (dein 2.ter Voschlag) muss um das überschreiben der Datei zu verhindern?


    Die Änderungen die ich gemacht habe sehen so aus:


    ________________________________________________


    #!/bin/sh


    # udhcpc script edited by Tim Riker <Tim@Rikers.org>


    [ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1


    RESOLV_CONF="/etc/resolv.conf.dhcp"
    [ -n "$broadcast" ] && BROADCAST="broadcast $broadcast"
    [ -n "$subnet" ] && NETMASK="netmask $subnet"


    case "$1" in
    deconfig)
    /sbin/ifconfig $interface 0.0.0.0
    ;;


    renew|bound)
    /sbin/ifconfig $interface $ip $BROADCAST $NETMASK


    if [ -n "$router" ] ; then
    #echo "deleting routers"
    while route del default gw 0.0.0.0 dev $interface 2>/dev/null /dev/null; do
    :
    done


    for i in $router ; do
    route add default gw $i dev $interface
    done
    fi


    echo -n > $RESOLV_CONF
    [ -n "$domain" ] && echo search $domain >> $RESOLV_CONF
    for i in $dns ; do
    echo adding dns $i
    echo nameserver $i >> $RESOLV_CONF
    done
    ;;
    esac


    exit 0

  • @ ALL


    Wie es scheint sit Cooper zu sehr mit der LinVDR 0.8er Version beschäftigt, so dass er sich nicht um mein Problem kümmern kann. Ist ja auch gut so, denn schliesslich warten ja schon hunderte Neugierige auf den magischen Tag.


    Vielleicht hat jemand anders ne Idee wie ich das Problem lösen kann. Wie bereits angedeutet bin ich kein Programmierer und bräuchte tatkräftige Unterstützung.


    Wäre für jede Hilfe dankbar.


    Cowboy

  • @ cooper


    Soory, dass ich dich mit diesem Thema nochmals belästigt habe. Mittlerweile habe ich den Fehler gefunden. Es lag wohl daran, dass ich - wie so oft - selbst etwas in der VDR Netzwerkkonfiguration (im Setup) verbogen habe. Ich weiss zwar bis heute nicht was und konnte es zumfolge auch nicht rückgängig machen. Zur Lösung des Problems habe ich einfach auf Mahlzeit-Iso 3.2 upgedated, was ich sowieso vor hatte, und nun läuft alles wieder wie am Schnürchen.


    Habe nun auch deinen Vorschlag mit der Änderung von resolv.conf in resolv.conf.dhcp in der Datei default.script erfolgreich umgesetzt. Internetverbindung funktioniert somit perfekt.


    Danke nochmals für die Hilfe.


    Cowboy