Jora_Cornev Опубликовано 18 августа, 2017 (изменено) Как заставить 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 Изменено 18 августа, 2017 пользователем Jora_Cornev Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
zhenya` Опубликовано 18 августа, 2017 Маркировать https://unix.stackexchange.com/questions/4420/reply-on-same-interface-as-incoming Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jora_Cornev Опубликовано 18 августа, 2017 zhenya`, спасибо за ссылку, но из-за обилия там примеров глаза разбегаюьтся. Не подскажите на что нужно обратить внимание. Т.е. скопипастить? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vop Опубликовано 18 августа, 2017 zhenya`, спасибо за ссылку, но из-за обилия там примеров глаза разбегаюьтся. Не подскажите на что нужно обратить внимание. Т.е. скопипастить? Надо сделать две вещи: 1. Сделать альтернативную таблицу роутинга. (ip route add default via ... dev ... table yourid) 2. Добавить правило для этой таблицы. (ip rule add from <IP-addres> table yourid) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jora_Cornev Опубликовано 19 августа, 2017 1. Сделать альтернативную таблицу роутинга. (ip route add default via ... dev ... table yourid) А что значит your id ? Где его взять? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 19 августа, 2017 1. Сделать альтернативную таблицу роутинга. (ip route add default via ... dev ... table yourid) А что значит your id ? Где его взять? man rt_tables http://www.linuxhorizon.ro/iproute2.html В примере четко ваш случай, с двумя GW. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jora_Cornev Опубликовано 19 августа, 2017 (изменено) Остался вопрос как теперь сохранить маршруты? Т.к. после перезагрузки они исчезают... Мануалах написано добавить в /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 Изменено 20 августа, 2017 пользователем Jora_Cornev Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vop Опубликовано 19 августа, 2017 Вот эта строка не особо нужна: ip route add 192.168.200.0/24 dev eno33559296 table 555 Команды можно добавить в отдельный скрипт, и вызывать его после поднятия интерфейса. Я уже не помню, как там в центозе. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 20 августа, 2017 Остался вопрос как теперь сохранить маршруты? Т.к. после перезагрузки они исчезают... Мануалах написано добавить в /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 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jora_Cornev Опубликовано 21 августа, 2017 Ух, уж этот 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 Что вообщем-то логично.... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
zhenya` Опубликовано 21 августа, 2017 ты изначально задачу неверно поставил. На центосе надо статик нарисовать до 200ой сети и все :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jora_Cornev Опубликовано 21 августа, 2017 (изменено) Действительно! дело было не в бабине.... ip route add 192.168.100.0/24 via 192.168.200.254 dev eno3355929 решил данную проблему. zhenya`, vop, kayot, большое Вам спасибо! Изменено 21 августа, 2017 пользователем Jora_Cornev Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jora_Cornev Опубликовано 21 августа, 2017 Остался вопрос как теперь сохранить маршруты? Т.к. после перезагрузки они исчезают... Мануалах написано добавить в /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 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
myth Опубликовано 21 августа, 2017 /etc/rc.local Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jora_Cornev Опубликовано 21 августа, 2017 А можно по подробней, для тех кто не в курсе дела... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
guеst Опубликовано 22 августа, 2017 (изменено) А можно по подробней, для тех кто не в курсе дела... 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 Изменено 22 августа, 2017 пользователем guest81 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jora_Cornev Опубликовано 2 сентября, 2017 guest81, спасибо! Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jora_Cornev Опубликовано 2 сентября, 2017 А нет. Не взлетело.... Вбил роут в файл 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 НО после перезагрузки, тишина. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
LostSoul Опубликовано 3 сентября, 2017 ifup трогать не надо это не правильно rule и route вам правильно сказали, копайте почему не работает , должно работать Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Antares Опубликовано 3 сентября, 2017 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 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
guеst Опубликовано 4 сентября, 2017 (изменено) мне кажется в 1 посте 192.168.200.0 была за eno33559296 , а не за eno3355929 , как в последнем.... Изменено 4 сентября, 2017 пользователем guest81 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jora_Cornev Опубликовано 4 сентября, 2017 Поначалу обрадовался, что вот он косяк в неверно указанной сетевой карте! Но, нет в 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'ом сразу после изменения файла. И даже на всякий пожарный перезагрузил операционку. Но результат нулевой (((( Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
guеst Опубликовано 5 сентября, 2017 если руками выполняете команду из rc.local ( /bin/ip route add 192.168.100.0/24 via 192.168.200.254 dev eno33559296 ) всё получается? ....и да :) Дистрибутивы Linux то у всех разные, в вашем, исполняемый файл "ip" тоже находится в /bin ? (проверить же знаете как? whereis ip ) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...