Dhcrelay-Problem?

Dhcrelay-Problem?

DHCP-Antwort erreicht nicht den endgültigen Client.

Hintergrund: Hausnetz:

107.nn.164.89 - zum Internet

192.168.100.0/24 - lokales Haus-LAN1

192.168.1.254/30 - Tor zur Männerhöhle

Männerhöhle:

192.168.1.253/30 - Gateway zum Haus

192.168.200.254/24 - lokales LAN1 der Männerhöhle

mancave dhcrelay sendet Anfragen an den DHCP-Server, der auf Haus-LAN1 läuft (der auch auf 1.254/30 lauscht)

House DHCP antwortet auf diese Anfragen.

Ich kann sehen, dass die Antwort vom Haus über 1.253 eingeht und dhcrelay sie an das Netzwerk 200.0/24 sendet; das glaube ich zumindest.

Das 200.0/24-Netzwerk zeigt eine ausgehende Anfrage, aber nichts kommt zurück.

Ich kann vom 200.0/24-Netzwerk in der Männerhöhle aus surfen (oder was auch immer), wenn ich IP, Gateway usw. manuell einstelle.

dhcrelay, route, tcpdump folgt:

darouter heißt hausnetzwerk

[root@darouter named]# tcpdump -i ens2 -nn port 67 or port 68
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens2, link-type EN10MB (Ethernet), capture size 262144 bytes
07:10:26.347170 IP 192.168.1.253.67 > 192.168.1.254.67: BOOTP/DHCP, Request from 00:e8:fb:00:67:37, length 548
07:10:26.347488 IP 192.168.1.254.67 > 192.168.200.254.67: BOOTP/DHCP, Reply, length 310
07:10:34.427024 IP 192.168.1.253.67 > 192.168.1.254.67: BOOTP/DHCP, Request from 00:e8:fb:00:67:37, length 548
07:10:34.427282 IP 192.168.1.254.67 > 192.168.200.254.67: BOOTP/DHCP, Reply, length 310

dacave ist ein Mancave-Netzwerk; das erste ist 1,253/30 netto

[root@dacave ~]# tcpdump -i enp3s0 -nn port 67 or port 68
dropped privs to tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on enp3s0, link-type EN10MB (Ethernet), capture size 262144 bytes
09:09:45.827122 IP 192.168.1.253.67 > 192.168.1.254.67: BOOTP/DHCP, Request from 00:e8:fb:00:67:37, length 548
09:09:45.827647 IP 192.168.1.254.67 > 192.168.200.254.67: BOOTP/DHCP, Reply, length 310
09:09:53.906938 IP 192.168.1.253.67 > 192.168.1.254.67: BOOTP/DHCP, Request from 00:e8:fb:00:67:37, length 548
09:09:53.907477 IP 192.168.1.254.67 > 192.168.200.254.67: BOOTP/DHCP, Reply, length 310
^C
4 packets captured

200,0/24 netto:

[root@dacave ~]# tcpdump -i enp5s0 -nn port 67 or port 68
dropped privs to tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on enp5s0, link-type EN10MB (Ethernet), capture size 262144 bytes
09:09:45.827036 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 00:e8:fb:00:67:37, length 548
09:09:53.906885 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 00:e8:fb:00:67:37, length 548
^C
2 packets captured

dhcrelay-Konfiguration:

[root@dacave ~]# show dhc
206:  82462 ?        Ss     0:00 /usr/sbin/dhcrelay -d --no-pid 192.168.1.254 -i enp5s0

Mancave-Route -n

[root@dacave ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.254   0.0.0.0         UG    100    0        0 enp3s0
192.168.1.252   0.0.0.0         255.255.255.252 U     100    0        0 enp3s0
192.168.200.0   0.0.0.0         255.255.255.0   U     101    0        0 enp5s0
[root@dacave ~]# 

Hausroute -n

[root@darouter named]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         107.nn.164.89  0.0.0.0         UG    100    0        0 enp2s0f0
0.0.0.0         192.168.1.253   0.0.0.0         UG    101    0        0 ens2
107.nn.164.88  0.0.0.0         255.255.255.252 U     100    0        0 enp2s0f0
192.168.1.252   0.0.0.0         255.255.255.252 U     100    0        0 ens2
192.168.100.0   0.0.0.0         255.255.255.0   U     100    0        0 enp2s0f1
192.168.200.0   192.168.1.254   255.255.255.0   UG    0      0        0 ens2
[root@darouter named]# 

Wie Sie sehen, kommen im Netzwerk 200.0/24 keine Antworten zurück.

Fehlt mir eine Route oder ?

Oh, die Firewall ist weit offen (Eingabe, Ausgabe und Weiterleitung akzeptieren). Ich habe 'iptables -t nat -A POSTROUTING -o enp3s0 -j ​​SNAT zu 192.168.1.253 ausprobiert und die SNAT-Zeile komplett entfernt.

Dhcrelay konnte NICHT in „Tags“ eingefügt werden – warum um alles in der Welt sollte jemand 300 Rep benötigen, um das zu tun?

icarus: habe -m forward beim Start von dhcrelay ausprobiert – sehe keinen Unterschied. strace gibt zurückSeitenvon Sachen. Ich bin mit dem Befehl nicht vertraut und --help hilft mir nicht weiter. Kann ich etwas greppen oder einen Befehlszeilenschalter setzen, um zu helfen? Mir ist beim Start aufgefallen, dass die letzte von dhcrelay ausgegebene Meldung „Alle Funktionen gelöscht“ lautet. Wenn Sie es wissen, was bedeutet das?

Wenn Sie außerdem -v zur Zeile tcpdump hinzufügen, erhalten Sie Folgendes:

dropped privs to tcpdump
tcpdump: listening on enp3s0, link-type EN10MB (Ethernet), capture size 262144 bytes
09:49:42.961047 IP (tos 0x0, ttl 64, id 4, offset 0, flags [DF], proto UDP (17), length 576)
    192.168.1.253.67 > 192.168.1.254.67: BOOTP/DHCP, Request from 00:e8:fb:00:67:37, length 548, hops 1, xid 0xdf341d5f, secs 3, Flags [none]
          Gateway-IP 192.168.200.254
          Client-Ethernet-Address 00:e8:fb:00:67:37
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: Discover
            MSZ Option 57, length 2: 548
            Requested-IP Option 50, length 4: 192.168.200.101
            Lease-Time Option 51, length 4: 4294967295
            Parameter-Request Option 55, length 14: 
              Subnet-Mask, Default-Gateway, Domain-Name-Server, Hostname
              Domain-Name, RP, TTL, BR
              MD, Router-Discovery, Static-Route, YD
              YS, NTP
            Vendor-Class Option 60, length 23: "Linux 2.4.20-uc0 armv3l"
            Client-ID Option 61, length 7: ether 00:e8:fb:00:67:37
09:49:42.961603 IP (tos 0x0, ttl 64, id 37859, offset 0, flags [DF], proto UDP (17), length 338)
    192.168.1.254.67 > 192.168.200.254.67: BOOTP/DHCP, Reply, length 310, hops 1, xid 0xdf341d5f, secs 3, Flags [none]
          Your-IP 192.168.200.10
          Gateway-IP 192.168.200.254
          Client-Ethernet-Address 00:e8:fb:00:67:37
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: Offer
            Server-ID Option 54, length 4: 192.168.1.254
            Lease-Time Option 51, length 4: 86400
            Subnet-Mask Option 1, length 4: 255.255.255.0
            Default-Gateway Option 3, length 4: 192.168.200.254
            Domain-Name-Server Option 6, length 4: 192.168.1.254
            Hostname Option 12, length 6: "UpEast"
            Domain-Name Option 15, length 14: "todhackett.com"
            BR Option 28, length 4: 255.255.255.255
            NTP Option 42, length 4: 192.168.1.254
^C
2 packets captured

falls das hilft.

Habe es zum Laufen gebracht. Im Handbuch von dhcrelay steht, dass man den Port so einstellt, dass er auf DHCP-Anfragen wartet, was ich getan habe, und 1.252/30 weggelassen habe, da nur 2 IPs da waren. Ok, mein manchmal kurzgeschlossenes Gehirn hat also entschieden, dass tatsächlich DHCP-Antwortnachrichten eingehen, also habe ich die Schnittstelle 1.252/30 auch in der Zeile eingestellt

dhcrelay -d --no-pid -i enp5s0 -i enp3s0 192.168.1.254

Es funktioniert alles super! Danke für eure Antworten!

verwandte Informationen