My hypothesis is that Interface.set_mac is being called AFTER the bond is applied, which sets the mac of the interface back to what it was originally. Probably adding a check to see if it's a bond member may solve it
Oct 30 2019
Basic config that duplicates this problem
To summarise, the MACs of interfaces that are bonded should all be the same (and should also match the mac of the bond interface). This works correctly in the older July build. However, this no longer works *on boot* in the latest builds. The screenshot above shows eth0, eth1, and bond0 all having different MACs which is why it's not working.
@xrobau WOW! What a bisection and research on that problem! Thanks a lot!
On the old image, the macs are set correctly
OH. MY. GLOB. I just figured it out.
This appears to be a bug in that intel driver - there's people reporting the same issues here: https://sourceforge.net/p/e1000/bugs/649/
This is getting more and more crazy the more time I spend on it, as this is a niggly issue that shouldn't be this hard to figure out.
Oct 29 2019
Oh, just to emphasize that it's a startup-config issue, if I disable and re-enable the ethernet port in the switch, it is still broken. The only way to get it working is to delete the member, commit, and re-add the member inside vyos.
While it was booting, it responded to three pings, and then nothing
It looks like the problem occurs when both interfaces are present when the machine boots. I can remove either one, reboot the machine, and it works.
Working 1.2.0-rolling config (with the different bonding syntax)
1.2.0 complete bond0 output
@c-po, thanks for your attention, I have found this:
#OpenVPN should get its own user if ! grep -q '^openvpn' /etc/passwd; then sudo adduser --system --group --shell /usr/sbin/nologin --home /var/lib/openvpn openvpn fi
Oct 28 2019
Hi @hexes well without knowing the details and diving into zabbix I suggest you just grab the diffs on the OpenVPN rewrite to see what was crucial. vyos-build repository should be the one if I remember correctly, or vyatta-cfg-system - one of those.
Christian, may be you know, when you fixed OpenVPN issue and add openvpn user, how did you do it? Why regular zabbix-agent and zabbix-proxy installation script broke authorization?
Oct 27 2019
I'd keep it open as a reminder what to add to the validator steps in a possible rewrite.
This eliminates the redundant interfaces.py and merges the op_mode displaying code into ifconfig.py
With this, will there also be possible to parse the same json into an json import? This to allow for a more programatic way to add things than via set commands
Oct 26 2019
Thanks for the contribution!
Oct 25 2019
Tested on 1.2-rolling-201910250117, the issue is solved.
I think that it's happens because I add zabbix-agent and user zabbix while compile ISO. And possible GID / UID was changed...
Oct 24 2019
Why not single source also the op-mode part into ifconfig.py?
This pull request rewrites all the functionality of ioctl.pm and lays the framework for the rest of Interface.pm
As this is merged into equuleus can we close this?
Let me merge it into equuleus branch
Ok, this is fixed already but I didn't notice because it is not yet merged in the Equuleus branch which I am running.
According to T1030 it is working as expected
Pull request sent to correct manual example.
Pull Request sent to fix the code.
It is currently impossible to update zones on cloudflare dns via ddclient because the generated configs for cloudflare are mising a zone=<domain.tld> directive.
I also note that the comment for each entry also says "DynDNS provider configuration" regardless of the provider used.
Whats the configuration you got on your side?
VyOS 1.2-rolling-201910210211 boots perfectly.