Just a quick followup: I've finally figured out a workaround. A hack, to
be sure, but a workaround nonetheless.
I've created a shell script called /etc/ppp/pppfix, which looks like this:
#!/bin/sh
# Fix up PPP routes
sleep 1;
logger -i -t ppp Fixing route: route change -host $1 $2 -ifp $3
route change -host $1 $2 -ifp $3
I invoke this from the relevant section of /etc/ppp.linkup with the line
!bg /etc/ppp/pppfix HISADDR MYADDR INTERFACE
Note that the "sleep" may not be absolutely necessary, but it seems like a
good idea just in case there's a race condition.
I also added the following lines in the relevant section of ppp.linkdown:
iface clear
delete! HISADDR
delete! ALL
shell arp -d HISADDR
quit all
I found that if I did not do this, the modified route persisted after the
connection terminated. The "arp -d HISADDR" should only be used if proxy
arp is being done, and may not be strictly necessary; I wanted to make
sure I tore down any residual proxy arp entry.
Of course, all of this is an awful hack and the relevant code in userland
PPP still needs to be looked at.
--Brett Glass
Brett,
I've fixed these two issues with ppp(8), please check the PRs: bin/130159
and bin/131250.
If it works for you please let a note and maybe someone commit this.
Best regards,
Luiz
_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"