Is anyone using virtual IPs with PPPoE successfully?



  • Hi!

    Is anyone using virtual IPs with PPPoE succesfully?

    For me things work fine until for some reason the modem lose signal and pfSense re-establish the connection.

    Once that happens I get errors such as this one for each of my virtual IPs:

    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanip: The command '/sbin/ifconfig 'pppoe0' inet 'aaa.bbb.ccc.200'/'32' alias ' returned exit code '1', the output was 'ifconfig: ioctl (SIOCAIFADDR): Destination address required'
    

    and services start to fail on servers which have these virtual IPs.

    There's a ticket about this, https://redmine.pfsense.org/issues/8413, which unfortunately was marked as duplicate but it is not and the problem is still present in current pfSense (2.4.5).

    I posted in the relevant forum but never got any reply, are usage of the other forums deprecated?

    Thank you and have a nice day!

    Nick


  • Netgate Administrator

    Hmm, I agree it it probably the same root cause, the change in IPAlias handling, but was not fixed with what went in for localhost and CARP VIPs. It looks more like it's trying to apply the alias to the interface before the PPPoE has established.

    They do come up correctly at boot with no errors?

    Can we see more of the log when you do see the error? Specifically is the error thrown before the PPPoE link shows as up?

    Steve


  • Netgate Administrator

    And reading further......

    You should be putting IPAliases on localhost for a PPPoE connection. That was broken and then fixed by the original bug.

    Interesting that this works at all. I would expect it to fail on pppoe directly even at boot.

    Try putting the VIPs on localhost, let us know if that produces the required behaviour.

    Steve



  • Hi!

    Sorrrrry for the delayed reply, the last few days have been hectic to say the least...

    Funnily, setted up as it was initially (virtual IPs on WAN connection), it actually failed at boot too... I am at a loss as to why it worked anyway after.

    In the thread I had posted in the virtual IP related forum I was actually asking if my problem of servers using virtual IPs misbehaving could be caused by those errors, I assume they did but cannot say for sure.

    At boot is actually fails twice by the way... One time before the interface gets its IP and after it did.

    Both times it looks something like this

    Mar 31 15:58:04 	check_reload_status 		rc.newwanip starting pppoe0
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanipv6: rc.newwanipv6: Info: starting on pppoe0.
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanipv6: rc.newwanipv6: No IPv6 address found for interface WAN [wan].
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanip: rc.newwanip: Info: starting on pppoe0.
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanip: rc.newwanip: on (IP address: ddd.eee.fff.ggg) (interface: WAN[wan]) (real interface: pppoe0).
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanip: The command '/sbin/ifconfig 'pppoe0' inet 'aaa.bbb.ccc.200'/'32' alias ' returned exit code '1', the output was 'ifconfig: ioctl (SIOCAIFADDR): Destination address required'
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanip: The command '/sbin/ifconfig 'pppoe0' inet 'aaa.bbb.ccc.201'/'32' alias ' returned exit code '1', the output was 'ifconfig: ioctl (SIOCAIFADDR): Destination address required'
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanip: The command '/sbin/ifconfig 'pppoe0' inet ' aaa.bbb.ccc.202'/'32' alias ' returned exit code '1', the output was 'ifconfig: ioctl (SIOCAIFADDR): Destination address required'
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanip: The command '/sbin/ifconfig 'pppoe0' inet 'aaa.bbb.ccc.203'/'32' alias ' returned exit code '1', the output was 'ifconfig: ioctl (SIOCAIFADDR): Destination address required'
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanip: The command '/sbin/ifconfig 'pppoe0' inet 'aaa.bbb.ccc.204'/'32' alias ' returned exit code '1', the output was 'ifconfig: ioctl (SIOCAIFADDR): Destination address required'
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanip: The command '/sbin/ifconfig 'pppoe0' inet 'aaa.bbb.ccc.205'/'32' alias ' returned exit code '1', the output was 'ifconfig: ioctl (SIOCAIFADDR): Destination address required'
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanip: The command '/sbin/ifconfig 'pppoe0' inet 'aaa.bbb.ccc.206'/'32' alias ' returned exit code '1', the output was 'ifconfig: ioctl (SIOCAIFADDR): Destination address required'
    Mar 31 15:58:05 	php-fpm 	30436 	/rc.newwanip: The command '/sbin/ifconfig 'pppoe0' inet 'aaa.bbb.ccc.207'/'32' alias ' returned exit code '1', the output was 'ifconfig: ioctl (SIOCAIFADDR): Destination address required'
    Mar 31 15:58:06 	php-fpm 	30436 	/rc.newwanip: Default gateway setting Interface WAN_PPPOE Gateway as default.
    Mar 31 15:58:06 	php-fpm 	30436 	/rc.newwanip: Gateway, none 'available' for inet6, use the first one configured. ''
    Mar 31 15:58:21 	php-fpm 	30436 	/rc.newwanip: Ignoring IPsec reload since there are no tunnels on interface wan
    Mar 31 15:58:21 	php-fpm 	30436 	/rc.newwanip: Resyncing OpenVPN instances for interface WAN.
    Mar 31 15:58:21 	php-fpm 	30436 	/rc.newwanip: RRD create failed exited with 1, the error is: ERROR: you must define at least one Data Source
    Mar 31 15:58:21 	php-fpm 	30436 	/rc.newwanip: RRD create failed exited with 1, the error is: ERROR: you must define at least one Data Source
    Mar 31 15:58:21 	php-fpm 	30436 	/rc.newwanip: Creating rrd update script
    Mar 31 15:58:23 	php-fpm 	30436 	/rc.newwanip: pfSense package system has detected an IP change or dynamic WAN reconnection - ddd.eee.fff.ggg -> ddd.eee.fff.ggg - Restarting packages.  
    

    (this is after getting the IP...)

    The fact that it fails before the interface gets its IP suggests this would fail for both PPPoE and DHCP too... Should this script be run before the interface has an IP?

    I put the virtual IPs on Localhost and it seems to work but I won't be able to test how it behaves when the connection is reestablished for a few days because of the current situation.

    I have a question though. Wouldn't it be preferable that the script does as if Localhost had been chosen for the virtual IPs when it "sees" that the WAN interface is actually a PPPoE connection?

    I absolutely love having this workaround if it turns out it fixes my problem but I am sure others will do the same "mistake" I did...

    Thank you very much for your help and have a nice day!

    Nick


Log in to reply