oxidecomputer / oxidecomputer/omicron

Firewall rules not updated for renamed VPC

Open
#10,561 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
572
Forks
97
Avg merge
2d 12h
Merged PRs (30d)
96

Description

Perhaps this should be in https://github.com/oxidecomputer/omicron but I experienced it in the web console so I'll file it here.

  1. Create a VPC named k8s.
  2. Observe the default allow-icmp firewall rule targets the k8s VPC.
  3. Rename the k8s VPC to ms-k8s.
  4. Observe the default allow-icmp firewall rule still targets the old k8s VPC.
  5. Attempt to update the allow-icmp firewall rule.
    1. Delete the k8s VPC target.
    2. Add the ms-k8s VPC target.
    3. Click "Update Rule" and note the Cross-VPC firewall host filter unsupported error.
  6. Refresh the VPC firewall rules list and note the allow-icmp rule was indeed updated with the ms-k8s VPC target.

Here's what the JavaScript console showed when I clicked "Update Rule".

API URL:        https://oxide.sys.r3.oxide-preview.com/v1/vpc-firewall-rules?project=matthewsanabria&vpc=ms-k8s
Request ID:     21647ed3-cef9-4b39-9068-c74fbe1d6925
Error code:     InvalidRequest
Error message:  Cross-VPC firewall host filter unsupported

I'd do more digging on this but I'm in the middle of a few things. I wanted to file the issue though so I didn't forget about it.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the VPC firewall-rules API request shown in the report and reproduce the rename and rule-update sequence. Inspect how the renamed VPC target is handled and verify that the allow-icmp rule points to the new name and can be updated without the Cross-VPC firewall host filter unsupported error.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
api, networking
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
56/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.