Physical Interface

This example configures an existing physical interface link: - rename it to outside - add an ipv4 address - set the link state to up

interfaces:
  outside:
    addresses:
      - 192.0.2.10/24
      - 2001:db8:dead:c0de::10/64
    link:
      kind: physical
      state: up
    identify:
      perm_address: 8c:16:45:dc:b1:ad

routing:
  routes:
    - to: 0.0.0.0/0
      via: 192.0.2.1
    - to: ::/0
      via: fe80::defa
      dev: outside
{
  networking.ifstate = {
    enable = true;
    settings = {
      interfaces.outside = {
        addresses = [
          "2001:db8:dead:c0de::10/64"
          "192.0.2.10/24"
        ];
        link = {
          state = "up";
          kind = "physical";
        };
        identify.perm_address = "8c:16:45:dc:b1:ad";
      };
      routing.routes = [
        {
          to = "0.0.0.0/0";
          via = "192.0.2.1";
        }
        {
          to = "::/0";
          via = "fe80::defa";
          dev = "outside";
        }
      ];
    };
  };
}
ip link dev eth0 set down
ip link set dev eth0 name outside up
ip address add 192.0.2.10/24 dev outside
ip address add 2001:db8:dead:c0de::10/64 dev outside
ip route add default via 192.0.2.1
ip route add default via fe80::defa dev outside