New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for dynamic interfaces in ifAlias script #6005

Merged
merged 2 commits into from Feb 26, 2017

Conversation

Projects
None yet
6 participants
@ollb
Contributor

ollb commented Feb 25, 2017

Sometimes there are dynamic interfaces and retrieving aliases from config files is not possible. The idea is to use alias from netlink if there is no alias information in config file. It is useful for example when you have ppp links or dynamic tunnel links. In such cases, you can use the ip link set IFACE alias ALIAS command when initializing your interface.

  • netlink and ip support alias (ip link set IFACE alias ALIAS). In an
    environment with dynamic interfaces, it is useful to be able retrieve
    aliases from ip.

  • we cannot assume next iface oid is n + 1 since they do not follow
    incrementally when some interfaces has been destroyed and recreated.

  • use straight POSIX shell

Tested on Debian GNU/Linux Jessie with snmpwalk & snmpbulkwalk.

DO NOT DELETE THIS TEXT

Please note

Please read this information carefully. You can run ./scripts/pre-commit.php to check your code before submitting.

  • Have you signed the Contributors agreement - please do NOT submit a pull request unless you have (signing the agreement in the same pull request is fine). Your commit message for signing the agreement must appear as per the docs.
  • Have you followed our code guidelines?

Testers

If you would like to test this pull request then please run: ./scripts/github-apply <pr_id>, i.e ./scripts/github-apply 5926

ollb added some commits Feb 25, 2017

add support for dynamic interfaces in ifAlias script
* netlink and ip support alias (`ip link set IFACE alias ALIAS`). In an
  environment with dynamic interfaces, it is useful to be able retrieve
  aliases from ip.

* we cannot assume next iface oid is n + 1 since oids do not necessarily
  follow incrementally when some interfaces has been destroyed and
  recreated.

* use straight POSIX shell
@mention-bot

This comment has been minimized.

mention-bot commented Feb 25, 2017

Thank you for submitting a PR @ollb! We have found the following @f0o, @patrick7 and @geordish based on the history of these files to review this PR.

@LibreNMS-CI

This comment has been minimized.

LibreNMS-CI commented Feb 25, 2017

Auto-Deploy finished, Test PR at http://6005.ci.librenms.org or https://6005.ci.librenms.org

@scrutinizer-notifier

This comment has been minimized.

scrutinizer-notifier commented Feb 25, 2017

The inspection completed: No new issues

@ollb ollb changed the title from Add support for dynamic interfaces in ifAliases script to Add support for dynamic interfaces in ifAlias script Feb 25, 2017

@patrick7

This comment has been minimized.

Contributor

patrick7 commented Feb 25, 2017

Works for me with both ip link alias and /etc/network/interfaces, the same goes for snmpwalk / snmpbulkwalk.

@laf laf merged commit 698584e into librenms:master Feb 26, 2017

2 checks passed

Auto-Deploy Build finished.
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details

VVelox pushed a commit to VVelox/librenms that referenced this pull request Feb 28, 2017

feature: Add support for dynamic interfaces in ifAlias script (libren…
…ms#6005)

* add support for dynamic interfaces in ifAlias script

* netlink and ip support alias (`ip link set IFACE alias ALIAS`). In an
  environment with dynamic interfaces, it is useful to be able retrieve
  aliases from ip.

* we cannot assume next iface oid is n + 1 since oids do not necessarily
  follow incrementally when some interfaces has been destroyed and
  recreated.

* use straight POSIX shell

* I agree to the conditions of the Contributor Agreement contained in
doc/General/Contributing.md.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment