Я в настоящее время использую GNU / Linux Иметь следующую таблицу маршрутизации:
default via 192.168.1.1 dev eno1 proto static metric 100
10.0.0.0/8 dev enp1s0 scope link linkdown
169.254.0.0/16 dev virbr0 scope link metric 1000 linkdown
192.168.1.0/24 dev eno1 proto kernel scope link src 192.168.1.2 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown
Я использую сетевой адаптер с eno1 для подключения к Интернету через шлюз в подсети 192.168.1.0/24
Я использую NIC с enp1s0, чтобы действовать как шлюз NAT ( 10.0.0.1
) для моей внутренней подсети ( 10.0.0.0/8
)
Теперь я хочу добавить (в учебных целях) маршрут к 10.0.0.0/8
подсеть через мой внешний (eno1) интерфейс:
# Added route via eno1, resulting in routing table shown above
ip route add 10.0.0.0/8 dev enp1s0
# When I add route via enp1s0, command causes error
ip route add 10.0.0.0/8 dev eno1
RTNETLINK answers: File exists
Не могли бы вы показать, пожалуйста, как решить эту проблему? Благодарю.
Не могли бы вы быть более сложным? Значимое обоснование будет высоко оценено.
Bulat M.
2
Как ядро решает, куда отправляются пакеты? Ваш вопрос немного похож на «почему не может иметь 2 одинаковых именованных файла в одном каталоге?».
Ipor Sircer
@Ipor, например, чтобы сделать вид балансировки, многолучевая маршрутизация (не знает точно подходящего слова), добавив какой-то вес в маршрут, нет?
Bulat M.
@Ipor, конечно, я просто предлагаю вам возможность заработать немного репутации, написав хороший ответ) Мы здесь, чтобы помочь вам в добрых делах.
Bulat M.