How to change Interface Metric permanently in CentOS

linux-networkingmetrics

My Config:

  1. Guest OS – CentOS7
  2. Host OS – Windows 7
  3. Interface – 3 (enp0s3, enp0s8, enp0s9)
  4. Installed in Virtual Box
  5. enp0s8 is Bridge to wlan0(For Internet)
  6. enp0s3 and enp0s9 are host-only

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.10.10.1 0.0.0.0 UG 100 0 0 enp0s3
0.0.0.0 192.168.3.1 0.0.0.0 UG 101 0 0 enp0s9
0.0.0.0 192.168.0.1 0.0.0.0 UG 102 0 0 enp0s8
10.10.10.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s3
192.168.0.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s8
192.168.3.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s9

I added METRIC=10 in /etc/sysconfig/network-scripts/ifcfg-enp0s8 and then restarted. But in route -n still it is showing Metric as 101 (As you see in above output). I tried sudo ifconfig enp0s8 metric 10, but no use. The ping 8.8.8.8 is failing. If I down the enp0s3, enp0s9, the ping is successful. Is there is way to do this?

Best Answer

Don't set default gateways for interfaces which don't connect to the Internet.

Remove the default gateways that are defined for those interfaces. That is, delete the GATEWAY= line from the ifcfg-enp0s3 and ifcfg-enp0s9 files.

You do not need to worry about the route metric at all.