Include VLAN interface and IP addresses in the network information
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 738
- Forks
- 407
- PR merge metrics
- No merged PRs in 30d
Description
After connecting my Linode to a new VLAN at `10.0.0.1/24` and rebooting, I can see that the host has the correct IP address configured on `eth1:`
```
$ ip addr
1: lo: ...
...
2: eth0: ...
...
3: eth1: ...
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet 10.0.0.1/24 brd 10.0.0.255 scope global eth1
valid_lft forever preferred_lft forever
```
I can see where that VLAN interface was configured under the "Configurations" tab, but `10.0.0.1` is not included among the IP Addresses in the "Network" tab. It shows me the public IPv4 and IPv6 addresses configured on `eth0`, plus a second link-local IPv6 address, but doesn't have any indication that there's a second network interface configured on the node.
Likewise, when I check the network information via the API:
```
$ curl -H "Authorization: Bearer $TOKEN" https://api.linode.com/v4/linode/instances/xxxxxxxx/ips | python3 -m json.tool
{
"ipv4": {
"public": [
{
"address": "(this is the only IP shown)",
...
}
],
"private": [],
"shared": [],
"reserved": []
},
...
}
```
It has no information about the VLAN!
This is leading to a little bit of trouble trying to programmatically manage my hosts with the [Linode Ansible Collection](https://github.com/linode/ansible_linode) – I want to configure nodes to connect to one another using the VLAN, but it's not very straightforward trying to match a host to its `10.0.0.*` address using the information that's currently readily available through the API, (I can get the *configuration* for `eth1` with the `/configs` endpoint, but it's less than ideal & leaves me wondering why that info wasn't just included in the list of IPs in to begin with).
In short – are there any plans to include VLAN configs into the more general network info available in the API and web UI?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the `/configs` and `/linode/instances/{id}/ips` API data with what the Configurations and Network tabs display. Determine whether VLAN interfaces and their IP addresses can be exposed through the available API data, then verify that the Network tab and API response include the VLAN information consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- react, typescript
- Domain
- api, frontend, networking
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100