Есть сервер pptp на FreeBSD поднят на интерфейсе IEEE 802.1Q. На клиенте (FreeBSD) pptp поднят с pppoe-шного интерфейса, другого способа кроме как через pppoe клиенту в интернет попасть не светит. Выглядит это на сервере:
Код: Выделить всё
grape# ifconfig ng0
ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1430
inet 10.255.100.1 --> 10.255.100.53 netmask 0xffffffff
grape#
Код: Выделить всё
tim# ifconfig ng1
ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1430
inet 10.255.100.53 --> 10.255.100.1 netmask 0xffffffff
tim #
между этими машинами в этом тоннеле я пытаюсь поднять ospf в итоге имею на сервере mpd:
Код: Выделить всё
ospfd.grape.tech# sh ip ospf neighbor ng0 de
ospfd.grape.tech# sh ip ospf neighbor ng0 detail
Neighbor 192.168.0.1, interface address 10.255.100.53
In the area 0.0.0.0 via interface ng0
Neighbor priority is 1, State is Init, 1 state changes
Most recent state change statistics:
Progressive change 19.173s ago
DR is 0.0.0.0, BDR is 0.0.0.0
Options 0 *|-|-|-|-|-|-|*
Dead timer due in 30.826s
Database Summary List 0
Link State Request List 0
Link State Retransmission List 0
Thread Inactivity Timer on
Thread Database Description Retransmision off
Thread Link State Request Retransmission off
Thread Link State Update Retransmission off
ospfd.grape.tech#
Код: Выделить всё
tim.ospfd# sh ip ospf neighbor ng0 detail
tim.ospfd#
Код: Выделить всё
grape# tcpdump -l -n -i vlan17 proto 47 > ~sudosu/dump.txt & tail -f ~sudosu/dump.txt | grep "OSPF"
[6] 18406
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on vlan17, link-type EN10MB (Ethernet), capture size 96 bytes
14:00:28.517382 IP 111.222.131.170.111 > 333.444.224.107: GREv1, call 41089, seq 1164, length 77: IP 10.255.100.53 > 224.0.0.5: OSPFv2, Hello, length: 44
14:00:28.554804 IP 333.444.224.107 > 111.222.170.111: GREv1, call 52839, seq 1168, length 81: IP 10.255.100.1 > 224.0.0.5: OSPFv2, Hello, length: 48
14:00:28.517382 IP 111.222.170.111 > 333.444.224.107: GREv1, call 41089, seq 1164, length 77: IP 10.255.100.53 > 224.0.0.5: OSPFv2, Hello, length: 44
14:00:28.554804 IP 333.444.224.107 > 111.222.170.111: GREv1, call 52839, seq 1168, length 81: IP 10.255.100.1 > 224.0.0.5: OSPFv2, Hello, length: 48
14:00:28.517382 IP 111.222.170.111 > 333.444.224.107: GREv1, call 41089, seq 1164, length 77: IP 10.255.100.53 > 224.0.0.5: OSPFv2, Hello, length: 44
14:00:28.554804 IP 333.444.224.107 > 111.222.170.111: GREv1, call 52839, seq 1168, length 81: IP 10.255.100.1 > 224.0.0.5: OSPFv2, Hello, length: 48
^C
grape#
на клиенте:
Код: Выделить всё
tim# tcpdump -l -n -i ng0 proto 47 > ~tim/dump.txt & tail -f ~tim/dump.txt | grep "OSPF"
[1] 20028
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ng0, link-type NULL (BSD loopback), capture size 96 bytes
14:05:12.928601 IP 111.222.170.111 > 333.444.224.107: GREv1, call 41089, seq 1171, length 77: IP 10.255.100.53 > 224.0.0.5: OSPFv2, Hello, length: 44
14:05:12.928601 IP 111.222.170.111 > 333.444.224.107: GREv1, call 41089, seq 1171, length 77: IP 10.255.100.53 > 224.0.0.5: OSPFv2, Hello, length: 44
14:05:22.930528 IP 111.222.170.111 > 333.444.224.107: GREv1, call 41089, seq 1173, length 77: IP 10.255.100.53 > 224.0.0.5: OSPFv2, Hello, length: 44
14:05:32.932452 IP 111.222.170.111 > 333.444.224.107: GREv1, call 41089, seq 1174, length 77: IP 10.255.100.53 > 224.0.0.5: OSPFv2, Hello, length: 44
^C
tim #
с учетом того, что:
Код: Выделить всё
grape# pfctl -s rules | egrep -i "ng0|gre|224\.0\."
pass quick on ng0 all
pass quick proto gre all
grape#
------------------------
tim# pfctl -s rules | egrep -i "ng1|gre|224\.0\."
pass quick on ng1 all flags S/SA keep state
pass quick proto gre all keep state
tim#
Что это, магия?
ЗЫ: Любителям аля "покажи ВСЮ конфигу ВСЕГО" обязательно покажу, конфигу чего угодно, но сразу замечу, что popint-to-point у меня на интерфесах в ospfd есть, арии одинаковые, все нулевые, сети в network добавлены, ну и прочеее-прочее. Спрашивайте если что-то непонятно и в этом есть смысл, а то конфигов оооооочень много.