Sun Jan 24, 2010 12:18 am
I modified & compiled ppp to not send the accmap(asyncmap) item, and to just assume an asyncmap of 0 for both sides.
After turning off other items that Mikrotik was rejecting (afccomp, protocomp, vjcomp), and setting mppe 128 stateless, I am getting connections and passing traffic...for about six minutes.
After that, there seems to be some unknown glitch. After about 6 minutes, the traffic stops passing. PPTP echo and replies are still moving. After disable and enable of the PPTP interface, it still will not connect for MINUTES! The log indicates that the remote host is 'unreachable' as it repeatedly dials. I know this is not the case. Other hosts on the same ethernet can reach the same PPTP server with no problem.
SO, my conclusion is that there is some either a routing misconfigure on my part, or a bug on Mikrotik part. Any ideas?
Other random problems:
Mikrotik should properly negotiate the asyncmap by accepting the offer of 0. (And of course, FreeBSD ppp shouldn't insist on it either)
Sometimes a negotiation succeeds, other times it fails. I can only assume this is due to bugs in Mikrotik, because the server is long established and does not have this problems with a variety of clients.
Mikrotik logs the IPv6CP as an 0x8057 'unrecognized protocol' and doesn't respond (except with the unrecognized protocol message), slowing the negotiation process. Mikrotik should respond by rejecting IPv6CP if they don't support IPv6. I turned it off on the server side to avoid this.
After a PPTP session is up, it takes a minute or two before packets will flow through.
Mikrotik can't seem to handle LQR either. I turned that off on server side.
If the server doesn't insist on either stateless or stateful, the connection ends up in a combo of the two. Which doesn't seem to work. Not sure if this is a FreeBSD ppp bug, or Mikrotik.