If you're using clicks, you're not a modern OPs.
Its not a Windows Machine where you Click anything and hopefully not build a SecurityFlaw....
If you wan't to administer OPNSense over a modern Way (like API) I suggest to read the Manual.
There's a way to use the API for that (that's how I do it with versioning and a Git repo in my local Network only for this task).
It Takes 2-3 Minutes and voila a new VLAN is there.
Here's an Example on how to do it:
Its a simple curl Post Call with a json file:
| Field | Description |
| ------------- | ------------------------------------------- |
| `enabled` | 1 = enable VLAN |
| `tag` | The VLAN ID (e.g., 30) |
| `description` | Description visible in GUI |
| `if` | Parent physical NIC (e.g., igb0, igb1, em0) |
| `priority` | Optional (0–7) |
To verify:
What exactly is your problem? Your statement doesn't make sense.
Its not a Windows Machine where you Click anything and hopefully not build a SecurityFlaw....
If you wan't to administer OPNSense over a modern Way (like API) I suggest to read the Manual.
There's a way to use the API for that (that's how I do it with versioning and a Git repo in my local Network only for this task).
It Takes 2-3 Minutes and voila a new VLAN is there.
Here's an Example on how to do it:
Code Select
curl -X POST "https://OPNSENSE-IP/api/interfaces/vlan/addVlan" \
-H "Content-Type: application/json" \
-u "APIKEY:APISECRET" \
-d '{
"vlan": {
"enabled": "1",
"tag": "30",
"description": "LAN_Prod",
"if": "igb0",
"priority": "0"
}
}'
Its a simple curl Post Call with a json file:
| Field | Description |
| ------------- | ------------------------------------------- |
| `enabled` | 1 = enable VLAN |
| `tag` | The VLAN ID (e.g., 30) |
| `description` | Description visible in GUI |
| `if` | Parent physical NIC (e.g., igb0, igb1, em0) |
| `priority` | Optional (0–7) |
To verify:
Code Select
curl -X GET "https://OPNSENSE-IP/api/interfaces/vlan/searchVlan" \
-u "APIKEY:APISECRET"
What exactly is your problem? Your statement doesn't make sense.
"