From cd0208f3fc34a5d984eeb0d5006da39e8bf4f758 Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Sun, 13 Oct 2024 22:02:59 -0400 Subject: [PATCH] Add a script to get the next hop in a route. I never remember the incantation, and its slightly different between FreeBSD and Linux so I am adding this script essentially as a note. --- ansible/roles/network/files/next_hop_freebsd.bash | 7 +++++++ ansible/roles/network/files/next_hop_linux.bash | 7 +++++++ ansible/roles/network/tasks/freebsd.yaml | 11 +++++++++++ ansible/roles/network/tasks/linux.yaml | 11 +++++++++++ 4 files changed, 36 insertions(+) create mode 100644 ansible/roles/network/files/next_hop_freebsd.bash create mode 100644 ansible/roles/network/files/next_hop_linux.bash diff --git a/ansible/roles/network/files/next_hop_freebsd.bash b/ansible/roles/network/files/next_hop_freebsd.bash new file mode 100644 index 0000000..367e67f --- /dev/null +++ b/ansible/roles/network/files/next_hop_freebsd.bash @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +# +set -euo pipefail +IFS=$'\n\t' +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +exec route get "${@}" diff --git a/ansible/roles/network/files/next_hop_linux.bash b/ansible/roles/network/files/next_hop_linux.bash new file mode 100644 index 0000000..4b72c84 --- /dev/null +++ b/ansible/roles/network/files/next_hop_linux.bash @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +# +set -euo pipefail +IFS=$'\n\t' +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +exec ip route get "${@}" diff --git a/ansible/roles/network/tasks/freebsd.yaml b/ansible/roles/network/tasks/freebsd.yaml index ed44588..3d9a1d6 100644 --- a/ansible/roles/network/tasks/freebsd.yaml +++ b/ansible/roles/network/tasks/freebsd.yaml @@ -75,3 +75,14 @@ file: path: "/etc/rc.conf.d/ip6addrctl" state: absent + +- name: Install scripts + copy: + src: "files/{{ item.src }}" + dest: "{{ item.dest }}" + mode: 0755 + owner: root + group: wheel + loop: + - src: next_hop_freebsd.bash + dest: /usr/local/bin/next_hop diff --git a/ansible/roles/network/tasks/linux.yaml b/ansible/roles/network/tasks/linux.yaml index 67b2cc1..297c7d2 100644 --- a/ansible/roles/network/tasks/linux.yaml +++ b/ansible/roles/network/tasks/linux.yaml @@ -58,3 +58,14 @@ - iwd.service # - systemd-networkd.service - systemd-resolved.service + +- name: Install scripts + copy: + src: "files/{{ item.src }}" + dest: "{{ item.dest }}" + mode: 0755 + owner: root + group: wheel + loop: + - src: next_hop_linux.bash + dest: /usr/local/bin/next_hop