Jump to content
Калькуляторы

centos 7 два gatwey

Как заставить Centos 7, гнать трафик в ту подсеть из которой пришел запрос?

 

первая сетевая карта - eno16780032 выставлен GATEWAY=192.168.20.254

вторая сетевая карта - eno33559296 выставлен GATEWAY=192.168.200.254

 

Делаю ping с соседнего маршрутизатора:

ping 192.168.20.3 всё ок

ping 192.168.200.3 в ответ ТИШИНА.

Но стоит выключить первую сетевую карту eno16780032 и сдель пинг ping 192.168.200.3 то всё ОК, ответы приходят.

 

Предполагаю, что проблема именно с GATEWAY, но как решить этот вопрос чёто пока ума не приложу....

 

route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.20.254  0.0.0.0         UG    100    0        0 eno16780032
0.0.0.0         192.168.200.254 0.0.0.0         UG    101    0        0 eno33559296
192.168.20.0    0.0.0.0         255.255.255.0   U     100    0        0 eno16780032
192.168.200.0   0.0.0.0         255.255.255.0   U     100    0        0 eno33559296

 

 

 

TYPE=Ethernet

TYPE=Ethernet

BOOTPROTO=none

DNS1=8.8.8.8

DEFROUTE=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_FAILURE_FATAL=no

NAME=eno16780032

UUID=20bfd95e-ed7b-4add-8662-bbaf616c4e6d

DEVICE=eno16780032

ONBOOT=yes

IPADDR=192.168.20.3

PREFIX=24

GATEWAY=192.168.20.254

IPV6_PEERDNS=yes

IPV6_PEERROUTES=yes

 

 

 

 

 

TYPE=Ethernet

BOOTPROTO=none

DNS1=8.8.8.8

DEFROUTE=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_FAILURE_FATAL=no

NAME=eno33559296

UUID=02e00150-a03b-4937-b4b1-d5032d9de46d

DEVICE=eno33559296

ONBOOT=yes

IPADDR=192.168.200.3

PREFIX=24

GATEWAY=192.168.200.254

IPV6_PEERDNS=yes

IPV6_PEERROUTES=yes

 

 

Edited by Jora_Cornev

Share this post


Link to post
Share on other sites

zhenya`, спасибо за ссылку, но из-за обилия там примеров глаза разбегаюьтся.

Не подскажите на что нужно обратить внимание. Т.е. скопипастить?

Share this post


Link to post
Share on other sites

zhenya`, спасибо за ссылку, но из-за обилия там примеров глаза разбегаюьтся.

Не подскажите на что нужно обратить внимание. Т.е. скопипастить?

 

Надо сделать две вещи:

 

1. Сделать альтернативную таблицу роутинга. (ip route add default via ... dev ... table yourid)

2. Добавить правило для этой таблицы. (ip rule add from <IP-addres> table yourid)

Share this post


Link to post
Share on other sites

1. Сделать альтернативную таблицу роутинга. (ip route add default via ... dev ... table yourid)

А что значит your id ? Где его взять?

Share this post


Link to post
Share on other sites

1. Сделать альтернативную таблицу роутинга. (ip route add default via ... dev ... table yourid)

А что значит your id ? Где его взять?

man rt_tables

http://www.linuxhorizon.ro/iproute2.html

В примере четко ваш случай, с двумя GW.

Share this post


Link to post
Share on other sites

Остался вопрос как теперь сохранить маршруты?

Т.к. после перезагрузки они исчезают...

 

Мануалах написано добавить в /etc/sysconfig/network-scripts/route-ethX необходимые записи.

А у меня как на зло нет такого файла...

Достаточно ли будет, если я его создам сам и впишу:

ip route add 192.168.200.0/24 dev eno33559296 table 555
ip route add default via 192.168.200.3 dev eno33559296 table 555
ip rule add from 192.168.200.3/32 table 555

Edited by Jora_Cornev

Share this post


Link to post
Share on other sites

Вот эта строка не особо нужна:

 

ip route add 192.168.200.0/24 dev eno33559296 table 555

 

Команды можно добавить в отдельный скрипт, и вызывать его после поднятия интерфейса. Я уже не помню, как там в центозе.

Share this post


Link to post
Share on other sites

Остался вопрос как теперь сохранить маршруты?

Т.к. после перезагрузки они исчезают...

 

Мануалах написано добавить в /etc/sysconfig/network-scripts/route-ethX необходимые записи.

А у меня как на зло нет такого файла...

Достаточно ли будет, если я его создам сам и впишу:

ip route add 192.168.200.0/24 dev eno33559296 table 555
ip route add default via 192.168.200.3 dev eno3355929 table 555
ip rule add from 192.168.200.3/32 table 555

Надо создать файл route-eno16780032, в нем

192.168.200.0/24 dev eno33559296 table 555

default via 192.168.200.3 dev eno3355929 table 555

И файл rule-eno16780032, в нем

from 192.168.200.3/32 table 555

Share this post


Link to post
Share on other sites

Ух, уж этот centos. Следующие грабли.

Два маршрутизатора, между которыми поднят DMVPN.

У одного локальный интерфейс с адресом 192.168.200.254

У второго локальный интерфейс с адресом 192.168.100.254

Связность есть, пинги ходять.

 

Беда в том, что я из сети 192.168.100.0/24 адрес asterisk'a 192.168.200.3 вижу, а на оборот нет.

Пинг с centos'a 192.168.100.9 приводит к неудаче.

Как выяснилось (через traceroute), centos гонит трафик по дефолтному маршруту 192.168.20.254. (А надо 192.168.200.254)

Т.е. опять через первую сетевую карту с адресом 192.168.20.3, где само собой не кто не в курсе о данной подсети (192.168.100.0/24)

 

Попробовал вбить один статический маршрут:

ip route add default via 192.168.100.9 dev eno33559296 table 555

Но в ответ получил:

RTNETLINK answers: Network is unreachable

Что вообщем-то логично....

Share this post


Link to post
Share on other sites

Действительно! дело было не в бабине....

ip route add 192.168.100.0/24 via 192.168.200.254 dev eno3355929

решил данную проблему.

 

zhenya`, vop, kayot, большое Вам спасибо!

Edited by Jora_Cornev

Share this post


Link to post
Share on other sites

Остался вопрос как теперь сохранить маршруты?

Т.к. после перезагрузки они исчезают...

 

Мануалах написано добавить в /etc/sysconfig/network-scripts/route-ethX необходимые записи.

А у меня как на зло нет такого файла...

Достаточно ли будет, если я его создам сам и впишу:

ip route add 192.168.200.0/24 dev eno33559296 table 555
ip route add default via 192.168.200.3 dev eno3355929 table 555
ip rule add from 192.168.200.3/32 table 555

Надо создать файл route-eno16780032, в нем

192.168.200.0/24 dev eno33559296 table 555

default via 192.168.200.3 dev eno3355929 table 555

И файл rule-eno16780032, в нем

from 192.168.200.3/32 table 555

 

К моему разочарованию centos проигнорировал данные занесенные в файлы route-eno16780032 и rule-eno16780032.

В процессе гугления нашел интересную ссылку, там предлагают прям в файле ifup-eth прописать необходимые роуты.

Содержимое файла ifup-eth:

#!/bin/bash

# Network Interface Configuration System

# Copyright © 1996-2014 Red Hat, Inc. all rights reserved.

#

# This program is free software; you can redistribute it and/or modify

# it under the terms of the GNU General Public License, version 2,

# as published by the Free Software Foundation.

#

# This program is distributed in the hope that it will be useful,

# but WITHOUT ANY WARRANTY; without even the implied warranty of

# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the

# GNU General Public License for more details.

#

# You should have received a copy of the GNU General Public License

# along with this program; if not, write to the Free Software

# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

 

. /etc/init.d/functions

 

cd /etc/sysconfig/network-scripts

. ./network-functions

 

[ -f ../network ] && . ../network

 

CONFIG=${1}

 

need_config "${CONFIG}"

 

source_config

 

if [ "${BOOTPROTO}" = "bootp" -o "${BOOTPROTO}" = "dhcp" ]; then

DYNCONFIG=true

fi

 

# load the module associated with that device

# /sbin/modprobe ${REALDEVICE}

is_available ${REALDEVICE}

 

# bail out, if the MAC does not fit

if [ -n "${HWADDR}" ]; then

FOUNDMACADDR=$(get_hwaddr ${REALDEVICE})

if [ "${FOUNDMACADDR}" != "${HWADDR}" -a "${FOUNDMACADDR}" != "${MACADDR}" ]; then

net_log $"Device ${DEVICE} has different MAC address than expected, ignoring."

exit 1

fi

fi

 

# If the device is a bridge, create it with brctl, if available.

if [ "${TYPE}" = "Bridge" ]; then

if [ ! -x /usr/sbin/brctl ]; then

net_log $"Bridge support not available: brctl not found"

exit 1

fi

if [ ! -d /sys/class/net/${DEVICE}/bridge ]; then

/usr/sbin/brctl addbr -- ${DEVICE} || exit 1

fi

[ -n "${DELAY}" ] && /usr/sbin/brctl setfd -- ${DEVICE} ${DELAY}

[ -n "${STP}" ] && /usr/sbin/brctl stp -- ${DEVICE} ${STP}

[ -n "${PRIO}" ] && /usr/sbin/brctl setbridgeprio ${DEVICE} ${PRIO}

[ -n "${AGEING}" ] && /usr/sbin/brctl setageing ${DEVICE} ${AGEING}

# add the bits to setup driver parameters here

for arg in $BRIDGING_OPTS ; do

key=${arg%%=*};

value=${arg##*=};

if [ "${key}" != "multicast_router" -a "${key}" != "hash_max" -a "${key}" != "multicast_snooping" ]; then

echo $value > /sys/class/net/${DEVICE}/bridge/$key

fi

done

# set LINKDELAY (used as timeout when calling check_link_down())

# to at least (${DELAY} * 2) + 7 if STP is enabled. This is the

# minimum time required for /sys/class/net/$REALDEVICE/carrier to

# become 1 after "ip link set dev $DEVICE up" is called.

if [ "${STP}" = "yes" -o "${STP}" = "on" ]; then

TMPD=7

[ -n "${DELAY}" ] && TMPD=$(expr ${DELAY} \* 2 + ${TMPD})

[ 0$LINKDELAY -lt $TMPD ] && LINKDELAY=$TMPD

fi

fi

 

# Create tap device.

if [ "${TYPE}" = "Tap" ]; then

[ -n "${OWNER}" ] && OWNER="user ${OWNER}"

TUNMODE="mode tap"

[[ ${DEVICE} == tun* ]] && TUNMODE="mode tun"

ip tuntap add ${TUNMODE} ${OWNER} dev ${DEVICE} > /dev/null

fi

 

# Team master initialization.

if [ -n "${TEAM_CONFIG}" ] && [ ! "${DEVICETYPE}" = "Team" ] && [ -x ./ifup-Team ]; then

./ifup-Team ${CONFIG} $2

fi

 

# now check the real state

is_available_wait ${REALDEVICE} ${DEVTIMEOUT} || {

if [ -n "$alias" ]; then

net_log $"$alias device ${DEVICE} does not seem to be present, delaying initialization."

else

net_log $"Device ${DEVICE} does not seem to be present, delaying initialization."

fi

exit 1

}

 

 

# this isn't the same as the MAC in the configuration filename. It is

# available as a configuration option in the config file, forcing the kernel

# to think an ethernet card has a different MAC address than it really has.

if [ -n "${MACADDR}" ]; then

ip link set dev ${DEVICE} address ${MACADDR}

fi

if [ -n "${MTU}" ]; then

ip link set dev ${DEVICE} mtu ${MTU}

fi

 

# is the device wireless? If so, configure wireless device specifics

is_wireless_device ${DEVICE} && . ./ifup-wireless

 

# Team slave device?

if [ -n "${TEAM_MASTER}" ] && [ ! "${DEVICETYPE}" = "TeamPort" ] && [ -x ./ifup-TeamPort ]; then

./ifup-TeamPort ${CONFIG} $2

ethtool_set

exit 0

fi

 

# slave device?

if [ "${SLAVE}" = yes -a "${ISALIAS}" = no -a "${MASTER}" != "" ]; then

install_bonding_driver ${MASTER}

grep -wq "${DEVICE}" /sys/class/net/${MASTER}/bonding/slaves 2>/dev/null || {

/sbin/ip link set dev ${DEVICE} down

echo "+${DEVICE}" > /sys/class/net/${MASTER}/bonding/slaves 2>/dev/null

}

ethtool_set

 

exit 0

fi

 

# Bonding initialization. For DHCP, we need to enslave the devices early,

# so it can actually get an IP.

if [ "$ISALIAS" = no ] && is_bonding_device ${DEVICE} ; then

install_bonding_driver ${DEVICE}

/sbin/ip link set dev ${DEVICE} up

for device in $(LANG=C grep -l "^[[:space:]]*MASTER=\"\?${DEVICE}\"\?\([[:space:]#]\|$\)" /etc/sysconfig/network-scripts/ifcfg-*) ; do

is_ignored_file "$device" && continue

/sbin/ifup ${device##*/} || net_log "Unable to start slave device ${device##*/} for master ${DEVICE}." warning

done

 

[ -n "${LINKDELAY}" ] && /bin/sleep ${LINKDELAY}

 

# add the bits to setup the needed post enslavement parameters

for arg in $BONDING_OPTS ; do

key=${arg%%=*};

value=${arg##*=};

if [ "${key}" = "primary" ]; then

echo $value > /sys/class/net/${DEVICE}/bonding/$key

fi

done

fi

 

# If the device is part of a bridge, add the device to the bridge

if [ -n "${BRIDGE}" ] && [ -x /usr/sbin/brctl ]; then

if [ ! -d /sys/class/net/${BRIDGE}/bridge ]; then

/usr/sbin/brctl addbr -- ${BRIDGE} 2>/dev/null

fi

/sbin/ip addr flush dev ${DEVICE} 2>/dev/null

/sbin/ip link set dev ${DEVICE} up

ethtool_set

[ -n "${LINKDELAY}" ] && /bin/sleep ${LINKDELAY}

/usr/sbin/brctl addif -- ${BRIDGE} ${DEVICE}

# add the bits to setup driver parameters here

for arg in $BRIDGING_OPTS ; do

key=${arg%%=*};

value=${arg##*=};

echo $value > /sys/class/net/${DEVICE}/brport/$key

done

# Upon adding a device to a bridge,

# it's necessary to make radvd reload its config

[ -r /var/run/radvd/radvd.pid ] && kill -HUP $(cat /var/run/radvd/radvd.pid)

exit 0

fi

 

if [ -n "${DYNCONFIG}" ] && [ -x /sbin/dhclient ]; then

if [[ "${PERSISTENT_DHCLIENT}" = [yY1]* ]]; then

ONESHOT="";

else

ONESHOT="-1";

fi;

generate_config_file_name

generate_lease_file_name

DHCLIENTARGS="${DHCLIENTARGS} -H ${DHCP_HOSTNAME:-${HOSTNAME%%.*}} ${ONESHOT} -q ${DHCLIENTCONF} -lf ${LEASEFILE} -pf /var/run/dhclient-${DEVICE}.pid"

echo

echo -n $"Determining IP information for ${DEVICE}..."

if [[ "${PERSISTENT_DHCLIENT}" != [yY1]* ]] && check_link_down ${DEVICE}; then

echo $" failed; no link present. Check cable?"

exit 1

fi

 

ethtool_set

 

if /sbin/dhclient ${DHCLIENTARGS} ${DEVICE} ; then

echo $" done."

dhcpipv4="good"

else

echo $" failed."

if [[ "${IPV4_FAILURE_FATAL}" = [Yy1]* ]] ; then

exit 1

fi

if [[ "$IPV6INIT" = [nN0]* || "$DHCPV6C" != [yY1]* ]] ; then

exit 1

fi

net_log "Unable to obtain IPv4 DHCP address ${DEVICE}." warning

fi

# end dynamic device configuration

else

if [ -z "${IPADDR}" -a -z "${IPADDR0}" -a -z "${IPADDR1}" -a -z "${IPADDR2}" ]; then

# enable device without IP, useful for e.g. PPPoE

ip link set dev ${REALDEVICE} up

ethtool_set

[ -n "${LINKDELAY}" ] && /bin/sleep ${LINKDELAY}

else

 

expand_config

 

[ -n "${ARP}" ] && \

ip link set dev ${REALDEVICE} $(toggle_value arp $ARP)

 

if ! ip link set dev ${REALDEVICE} up ; then

net_log $"Failed to bring up ${DEVICE}."

exit 1

fi

 

ethtool_set

 

[ -n "${LINKDELAY}" ] && /bin/sleep ${LINKDELAY}

 

if [ "${DEVICE}" = "lo" ]; then

SCOPE="scope host"

else

SCOPE=${SCOPE:-}

fi

 

if [ -n "$SRCADDR" ]; then

SRC="src $SRCADDR"

else

SRC=

fi

 

# set IP address(es)

for idx in {0..256} ; do

if [ -z "${ipaddr[$idx]}" ]; then

break

fi

 

if ! LC_ALL=C ip addr ls ${REALDEVICE} | LC_ALL=C grep -q "${ipaddr[$idx]}/${prefix[$idx]}" ; then

if [ "${REALDEVICE}" != "lo" ] && [ "${arpcheck[$idx]}" != "no" ] ; then

/sbin/arping -q -c 2 -w 3 -D -I ${REALDEVICE} ${ipaddr[$idx]}

if [ $? = 1 ]; then

net_log $"Error, some other host already uses address ${ipaddr[$idx]}."

exit 1

fi

fi

 

if ! ip addr add ${ipaddr[$idx]}/${prefix[$idx]} \

brd ${broadcast[$idx]:-+} dev ${REALDEVICE} ${SCOPE} label ${DEVICE}; then

net_log $"Error adding address ${ipaddr[$idx]} for ${DEVICE}."

fi

fi

 

if [ -n "$SRCADDR" ]; then

sysctl -w "net.ipv4.conf.${SYSCTLDEVICE}.arp_filter=1" >/dev/null 2>&1

fi

 

# update ARP cache of neighboring computers

if [ "${REALDEVICE}" != "lo" ]; then

/sbin/arping -q -A -c 1 -I ${REALDEVICE} ${ipaddr[$idx]}

( sleep 2;

/sbin/arping -q -U -c 1 -I ${REALDEVICE} ${ipaddr[$idx]} ) > /dev/null 2>&1 < /dev/null &

fi

done

 

# Set a default route.

if [ "${DEFROUTE}" != "no" ] && [ -z "${GATEWAYDEV}" -o "${GATEWAYDEV}" = "${REALDEVICE}" ]; then

# set up default gateway. replace if one already exists

if [ -n "${GATEWAY}" ] && [ "$(ipcalc --network ${GATEWAY} ${netmask[0]} 2>/dev/null)" = "NETWORK=${NETWORK}" ]; then

ip route replace default ${METRIC:+metric $METRIC} \

via ${GATEWAY} ${WINDOW:+window $WINDOW} ${SRC} \

${GATEWAYDEV:+dev $GATEWAYDEV} ||

net_log $"Error adding default gateway ${GATEWAY} for ${DEVICE}."

elif [ "${GATEWAYDEV}" = "${DEVICE}" ]; then

ip route replace default ${METRIC:+metric $METRIC} \

${SRC} ${WINDOW:+window $WINDOW} dev ${REALDEVICE} ||

net_log $"Erorr adding default gateway for ${REALDEVICE}."

fi

fi

fi

fi

 

# Add Zeroconf route.

if [ -z "${NOZEROCONF}" -a "${ISALIAS}" = "no" -a "${REALDEVICE}" != "lo" ]; then

ip route add 169.254.0.0/16 dev ${REALDEVICE} metric $((1000 + $(cat /sys/class/net/${REALDEVICE}/ifindex))) scope link

fi

 

# Inform firewall which network zone (empty means default) this interface belongs to

if [ -x /usr/bin/firewall-cmd -a "${REALDEVICE}" != "lo" ]; then

/usr/bin/firewall-cmd --zone="${ZONE}" --change-interface="${DEVICE}" > /dev/null 2>&1

fi

 

if [ "${TYPE}" = "Bridge" ]; then

for arg in $BRIDGING_OPTS ; do

key=${arg%%=*};

value=${arg##*=};

if [ "${key}" = "multicast_router" -o "${key}" = "hash_max" -o "${key}" = "multicast_snooping" ]; then

echo $value > /sys/class/net/${DEVICE}/bridge/$key

fi

done

fi

 

# IPv6 initialisation?

/etc/sysconfig/network-scripts/ifup-ipv6 ${CONFIG}

if [[ "${DHCPV6C}" = [Yy1]* ]] && [ -x /sbin/dhclient ]; then

generate_config_file_name 6

generate_lease_file_name 6

echo

echo -n $"Determining IPv6 information for ${DEVICE}..."

if /sbin/dhclient -6 -1 ${DHCPV6C_OPTIONS} ${DHCLIENTCONF} -lf ${LEASEFILE} -pf /var/run/dhclient6-${DEVICE}.pid -H ${DHCP_HOSTNAME:-${HOSTNAME%%.*}} ${DEVICE} ; then

echo $" done."

else

echo $" failed."

if [ "${dhcpipv4}" = "good" -o -n "${IPADDR}" ]; then

net_log "Unable to obtain IPv6 DHCP address ${DEVICE}." warning

else

exit 1

fi

fi

fi

 

exec /etc/sysconfig/network-scripts/ifup-post ${CONFIG} ${2}

 

 

В файле ifup-eth, все правила описаны функциями.

И вот задался вопросом, как добавить в файл ifup-eth функцию с ip route add 192.168.100.0/24 via 192.168.200.254 dev eno3355929

Share this post


Link to post
Share on other sites

А можно по подробней, для тех кто не в курсе дела...

root@gw-mt:/etc# cat /etc/rc.local
#..............skip..............

/bin/ip rule add from 80.247.109.168/30 table ikmo prio 235
/bin/ip rule add to 80.247.109.168/30 table ikmo prio 240
/bin/ip rule add from 192.168.61.64/27 table ikmo prio 245

/bin/ip route add 192.168.0.0/16 via 192.168.10.254 dev eth2
/bin/ip route add 10.33.0.0/16 via 192.168.10.254 dev eth2

/bin/ip route add 192.168.61.0/24 dev eth3 table ikmo
/bin/ip route add 192.168.10.0/24 dev eth2 table ikmo
/bin/ip route add 192.168.0.0/16 via 192.168.10.254 dev eth2 table ikmo
/bin/ip route add 10.33.0.0/16 via 192.168.10.254 dev eth2 table ikmo
/bin/ip route add default via 80.247.109.169 dev eth1 table ikmo
/bin/ip route add 192.168.1.0/24 reject

Edited by guest81

Share this post


Link to post
Share on other sites

А нет. Не взлетело....

Вбил роут в файл rc.local.

#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.

touch /var/lock/subsys/local

/bin/ip route add 192.168.100.0/24 via 192.168.200.254 dev eno3355929

НО после перезагрузки, тишина.

Share this post


Link to post
Share on other sites

ifup трогать не надо это не правильно

rule и route вам правильно сказали, копайте почему не работает , должно работать

 

Share this post


Link to post
Share on other sites

7 часов назад, Jora_Cornev сказал:

А нет. Не взлетело....

Вбил роут в файл rc.local.


#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.

touch /var/lock/subsys/local

/bin/ip route add 192.168.100.0/24 via 192.168.200.254 dev eno3355929

НО после перезагрузки, тишина.

chmod +x /etc/rc.d/rc.local

Share this post


Link to post
Share on other sites

Поначалу обрадовался, что вот он косяк в неверно указанной сетевой карте!

Но, нет в rc.local всё указанно верно.

По всей видимости когда копипастил на форум выделил не весь текс...

 

еще раз всё перепроверил, вот оригинальное содержание файла:

Спойлер

#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.

touch /var/lock/subsys/local

 

/bin/ip route add 192.168.100.0/24 via 192.168.200.254 dev eno33559296

 

Antares, chmod +x /etc/rc.d/rc.local выполнил под root'ом сразу после изменения файла.

И даже на всякий пожарный перезагрузил операционку.

Но результат нулевой ((((

 

Share this post


Link to post
Share on other sites

если руками выполняете команду из rc.local ( /bin/ip route add 192.168.100.0/24 via 192.168.200.254 dev eno33559296 ) всё получается?

....и да :) Дистрибутивы Linux то у всех разные, в вашем, исполняемый файл "ip" тоже находится в /bin ? 

(проверить же знаете как?  whereis ip )

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.