VLAN - Native VLAN on a router on a stick
In general, when creating trunks, it is considered best practice to create a Native VLAN on both ends of the trunk that will not be used anywhere else.
Now when you apply this to a router on a stick scenario, the switch end of the configuration should use the same best practice. You should create the VLAN and assign it as the native VLAN on that interface. On the router end of the link, you have one of two choices:
Choice 1: Explicitly create a subinterface where the native VLAN will be configured. i.e.
interface fastethernet 1/0/1.99 encapsulation dot1q 99 native
You don’t even have to configure an IP address, and actually, you shouldn’t. Essentially what this does is if any frames are sent to this interface with no VLAN tag, they will be processed by this interface. This interface essentially goes nowhere, so any frames coming here would be dropped.
Choice 2: Don’t create a subinterface for the native VLAN. The physical interface will process any frames sent without a VLAN ID by default.
In this case, you don’t even have to specify the encapsulation dot1q 99 native
command as all untagged traffic will go to this interface by default. Again, if you don’t configure an IP address the interface will go nowhere so any untagged frames that reach it will be dropped.
So in both cases, the native VLAN configs at both ends of such a link will match and will function correctly and safely.
Links
https://forum.networklessons.com/t/native-vlan-subint/2375/4?u=lagapidis
https://networklessons.com/switching/802-1q-native-vlan-cisco-ios-switch