Mam nasledujici situaci


2 subnety spojene pres linux routery pomoci OpenVPN. Oba linuxy jsou RedHat 9, OpenVPN 2.0rc6, dhcp-relay 3.0.2rc (?), iptables jsou 100% pruchozi (neni definovane zadne pravidlo).
Problem: DHCP klient posila DHCPDISCOVER, DHCP relay agent paket prijma a preposle pres VPNku paket na DHCP server. DHCP server odpovi a paket DORAZI zpet na router, kde je DHCP relay agent, ale paket nedorazi k procesu DHCP relay agenta. To ze nedorazi k procesu vim, protoze jsem debugoval zdrojak dhcrelay. Vypada to, ze problem bude nekde v komunikaci TUN adapter, jadro, dhcrelay, protoze kdyz vypustim VPNku a necham routovat pres subnet 10.0.0.0, tak to svet div se funguje. Jak to necham pres VPNku, tak to dela takove kraviny.

Zde je tcpdump.
DHCP klient posila DHCPDISCOVER:
21:08:10.815903 0.0.0.0.bootpc > 255.255.255.255.bootps: xid:0xc633d42d flags:0x8000 file ""[|bootp]
21:08:15.780978 0.0.0.0.bootpc > 255.255.255.255.bootps: xid:0xc633d42d secs:1280 flags:0x8000 file ""[|bootp]
21:08:22.801706 0.0.0.0.bootpc > 255.255.255.255.bootps: xid:0xc633d42d secs:3072 flags:0x8000 file ""[|bootp]

Od dhcrelay nam to pristalo na druhem routeru:
21:03:03.575822 172.16.0.6.bootps > 192.168.1.5.bootps: (request) hops:1 xid:0xe073cc67 secs:1024 flags:0x8000 G:192.168.2.1 ether 0:c:29:3:36:37 file ""[|bootp] (DF)

V zapeti DHCP server odpovida:
21:03:03.579139 192.168.1.5.bootps > 192.168.2.1.bootps: (reply) xid:0xe073cc67 flags:0x8000 Y:192.168.2.10 S:192.168.1.5 G:192.168.2.1 ether 0:c:29:3:36:37 file ""[|bootp]

Paket prijde na server s dhcrelayem a je konec, ke klientovi se to nedostane

Jeste jsem nechal logovat pakety pres IPtables na routeru s dhcrelay:
prichozi DHCP discover od DHCP klienta z eth0
Jan 22 19:33:37 router01 kernel: IN=eth0 OUT= MAC=ff:ff:ff:ff:ff:ff:00:0c:29:03:36:37:08:00 SRC=0.0.0.0 DST=255.255.255.255 LEN=328 TOS=0x00 PREC=0x00 TTL=128 ID=377 PROTO=UDP SPT=68 DPT=67 LEN=308

dhcrelay odesila na DHCP server
Jan 22 19:33:37 router01 kernel: IN= OUT=tun0 SRC=172.16.0.6 DST=192.168.1.5 LEN=328 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=UDP SPT=67 DPT=67 LEN=308

Prichazi paket od DHCP serveru, ale odchozi paket z eth0 na DHCP klienta jiz neni
Jan 22 19:33:37 router01 kernel: IN=tun0 OUT= MAC= SRC=192.168.1.5 DST=192.168.2.1 LEN=334 TOS=0x00 PREC=0x00 TTL=127 ID=28387 PROTO=UDP SPT=67 DPT=67 LEN=314
Jan 22 19:33:37 router01 kernel: IN=tun0 OUT= MAC= SRC=192.168.1.5 DST=192.168.2.1 LEN=334 TOS=0x00 PREC=0x00 TTL=127 ID=28387 PROTO=UDP SPT=67 DPT=67 LEN=314

Pokud nekdo vi kde muze byt zrada, tak bych byl nesmirne vdecny

EDIT by wong - subj.