Удаление маршрута во FreeBSD 9.2

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
MrStalker
рядовой
Сообщения: 15
Зарегистрирован: 2009-08-23 16:42:33

Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение MrStalker » 2013-10-01 19:18:51

Доброго времени суток...

Есть одна неприятная проблема.
Голову ломаю уже несколько часов.
Имеем 2 одинаковых сервера, на одном стоит FreeBSD 9.1 (8.4 даёт тот же результат) и 9.2. ОС чистая, то есть сразу после установки, с наименьшим вмешательством.
Далее настраиваются MPD5.7 клиенты, опять же идентичные.
На FreeBSD 9.1 всё работает идеально, на 9.2 фигушки... Разбираюсь далее... Никак не хочет удаляться маршрут.
Вот кусок кода up.sh (собственно route delete $8)

Код: Выделить всё

#!/bin/sh

route delete $8
route add $8 ШЛЮЗ
route delete default
route add default $4
Пытаюсь убрать вручную
9.1

Код: Выделить всё

root@Test:/usr/local/etc/mpd5 # netstat -nrf inet
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            85.21.59.67        UGS         0        4    ng0
10.0.0.0/8         10.165.32.1        UGS         0        0    em0
10.165.32.0/21     link#1             U           0      763    em0
10.165.33.183      link#1             UHS         0        0    lo0
78.107.196.0/22    10.165.32.1        UGS         0        0    em0
85.21.59.67        10.165.32.1        UGHS        0        6    em0
95.29.82.53        link#5             UHS         0        0    lo0
127.0.0.1          link#4             UH          0        0    lo0
233.32.240.0/24    10.165.33.183      US          0        0    em0
root@Test:/usr/local/etc/mpd5 # route delete 85.21.59.67
delete host 85.21.59.67
Здесь всё отлично

9.2

Код: Выделить всё

root@Eviko:/home/mrstalker # netstat -nrf inet
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            85.21.230.206      UGS         0        8    ng0
2.94.44.161        link#7             UHS         0        0    lo0
10.0.0.0/8         10.165.32.1        UGS         0        0    re0
10.165.32.0/21     link#3             U           0     3201    re0
10.165.38.3        link#3             UHS         0        0    lo0
78.107.196.0/22    10.165.32.1        UGS         0        0    re0
85.21.192.3        10.165.32.1        UGHS        0        0    re0
85.21.230.206      link#7             UH          0        8    ng0
127.0.0.1          link#6             UH          0        0    lo0
233.32.240.0/24    10.165.38.3        US          0        0    re0
root@Eviko:/home/mrstalker # route delete 85.21.230.206
route: writing to routing socket: Address already in use
delete host 85.21.230.206 fib 0: gateway uses the same route
А вот тут... В общем идеи кончились. Что принципиально изменилось и как можно исправить это?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
dmtr
ст. прапорщик
Сообщения: 545
Зарегистрирован: 2009-11-06 22:01:34
Откуда: с Ростова

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение dmtr » 2013-10-02 9:02:09

а вы чо, правда не видите разницы между строками?

Код: Выделить всё

85.21.59.67        10.165.32.1        UGHS        0        6    em0

Код: Выделить всё

85.21.230.206      link#7             UH          0        8    ng0
This game has no name. It will never be the same.

Аватара пользователя
dmtr
ст. прапорщик
Сообщения: 545
Зарегистрирован: 2009-11-06 22:01:34
Откуда: с Ростова

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение dmtr » 2013-10-02 9:07:36

This game has no name. It will never be the same.

Аватара пользователя
MrStalker
рядовой
Сообщения: 15
Зарегистрирован: 2009-08-23 16:42:33

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение MrStalker » 2013-10-02 16:07:29

Я наверно плохо изложил ситуацию...
dmtr писал(а):а вы чо, правда не видите разницы между строками?

Код: Выделить всё

85.21.59.67        10.165.32.1        UGHS        0        6    em0

Код: Выделить всё

85.21.230.206      link#7             UH          0        8    ng0
Я прекрасно вижу разницу, но эта разница - лишь следствие проблемы.

Не хочет удаляться маршрут по скрипту:

Код: Выделить всё

#!/bin/sh

route delete $8
route add $8 10.165.32.1
route delete default
route add default $4
фактически route delete $8 не может выполниться, в следствии чего route add $8 10.165.32.1 тоже выполняться не будет.

Для примера я вообще уберу up.sh скрипт.
Смотрим ситуацию по машинам

С 9.1

Код: Выделить всё

ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1460
        inet 176.15.17.145 --> 85.21.230.206 netmask 0xffffffff
        inet6 fe80::a00:27ff:fe12:721d%ng0 prefixlen 64 scopeid 0x5
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
Такс, шлюз 85.21.230.206
Смотрим маршруты

Код: Выделить всё

root@Test:/home/mrstalker # netstat -nrf inet
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            10.165.32.1        UGS         0       20    em0
10.0.0.0/8         10.165.32.1        UGS         0        0    em0
10.165.32.0/21     link#1             U           1      294    em0
10.165.33.183      link#1             UHS         0        0    lo0
85.21.230.206      link#5             UH          0        4    ng0
127.0.0.1          link#4             UH          0        0    lo0
176.15.17.145      link#5             UHS         0        0    lo0
85.21.230.206 link#5 UH 0 4 ng0
Вот тут внимание, сейчас пробую удалить этот маршрут

Код: Выделить всё

root@Test:/home/mrstalker # route delete 85.21.230.206
delete host 85.21.230.206
Всё удалилось!
Соответственно заменяю его другим

Код: Выделить всё

root@Test:/home/mrstalker # route add 85.21.230.206 10.165.32.1
add host 85.21.230.206: gateway 10.165.32.1
Ну и замещаю дефолтовый маршрут

Код: Выделить всё

root@Test:/home/mrstalker # route delete default
delete net default
root@Test:/home/mrstalker # route add default 85.21.230.206
add net default: gateway 85.21.230.206
Проверяем

Код: Выделить всё

root@Test:/home/mrstalker # ping google.com
PING google.com (173.194.71.101): 56 data bytes
64 bytes from 173.194.71.101: icmp_seq=0 ttl=48 time=19.658 ms
64 bytes from 173.194.71.101: icmp_seq=1 ttl=48 time=18.971 ms
64 bytes from 173.194.71.101: icmp_seq=2 ttl=48 time=19.180 ms
^C
--- google.com ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 18.971/19.270/19.658/0.288 ms
Перейдём к самому интересному: к машине с 9.2

Код: Выделить всё

ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1460
        inet 2.93.209.127 --> 85.21.230.206 netmask 0xffffffff
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
Не обращайте внимание на то что IP другой, шлюз 85.21.230.206 тот же
Вот маршруты

Код: Выделить всё

Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            10.165.32.1        UGS         0       27    re0
2.93.209.127       link#7             UHS         0        0    lo0
10.0.0.0/8         10.165.32.1        UGS         0       14    re0
10.165.32.0/21     link#3             U           0 12836759    re0
10.165.38.3        link#3             UHS         0        0    lo0
85.21.230.206      link#7             UH          0        0    ng0
127.0.0.1          link#6             UH          0       57    lo0
Принципиально никакой разницы.
85.21.230.206 link#7 UH 0 0 ng0
Маршрут как и на 9.1
Вот теперь особое внимание
Удаляю этот маршрут

Код: Выделить всё

root@Eviko:/home/mrstalker # route delete 85.21.230.206
route: writing to routing socket: Address already in use
delete host 85.21.230.206 fib 0: gateway uses the same route
Вот как это понимать?

snorlov
подполковник
Сообщения: 3695
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение snorlov » 2013-10-02 19:27:19

А вы не пробовали сначала удалить интерфейс ng0 и лишь затем маршрут...

Аватара пользователя
MrStalker
рядовой
Сообщения: 15
Зарегистрирован: 2009-08-23 16:42:33

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение MrStalker » 2013-10-02 19:48:39

Маршрут, который я удаляю, создаётся сразу после появления интерфейса ng0, так что не вариант...
Конфигурация md5 с up.sh и down.sh скриптами специально затачивалась под особенности нашего провайдера, и работала нормально с 8 ветки, а вот на 9.2 получается какая то ерунда...

Аватара пользователя
dmtr
ст. прапорщик
Сообщения: 545
Зарегистрирован: 2009-11-06 22:01:34
Откуда: с Ростова

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение dmtr » 2013-10-03 11:02:46

честно говоря конкретных предположений нет, только вопрос - вы уверены в идентичности конфигурации систем - опции ядра, фаервола, nat'a, rc.config, loader.conf?
This game has no name. It will never be the same.

lazhu
сержант
Сообщения: 194
Зарегистрирован: 2013-08-10 14:28:38
Контактная информация:

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение lazhu » 2013-10-03 14:20:04

Код: Выделить всё

options ROUTINGTABLES
присутствует в конфиге ядра? Какое значение?

Аватара пользователя
FreeBSP
майор
Сообщения: 2020
Зарегистрирован: 2009-05-24 20:20:19
Откуда: Москва

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение FreeBSP » 2013-10-03 14:55:02

mpd.conf покажите
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!

Аватара пользователя
MrStalker
рядовой
Сообщения: 15
Зарегистрирован: 2009-08-23 16:42:33

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение MrStalker » 2013-10-03 20:25:33

dmtr писал(а):честно говоря конкретных предположений нет, только вопрос - вы уверены в идентичности конфигурации систем - опции ядра, фаервола, nat'a, rc.config, loader.conf?
Так как проверялось на "чистых" системах:
Ядра GENERIC

Код: Выделить всё

root@Eviko:/home/mrstalker # diff GENERIC1 GENERIC2
19c19
< # $FreeBSD: release/9.1.0/sys/amd64/conf/GENERIC 238090 2012-07-04 00:54:16Z delphij $
---
> # $FreeBSD: releng/9.2/sys/amd64/conf/GENERIC 253860 2013-08-01 13:18:47Z marius $
24a25
> makeoptions   WITH_CTF=1              # Run ctfconvert(1) for DTrace support
29a31
> options       TCP_OFFLOAD             # TCP offload
35a38
> options       QUOTA                   # Enable disk quotas for UFS
65,66c68,69
< #options      KDTRACE_FRAME           # Ensure frames are compiled in
< #options      KDTRACE_HOOKS           # Kernel DTrace hooks
---
> options       KDTRACE_FRAME           # Ensure frames are compiled in
> options       KDTRACE_HOOKS           # Kernel DTrace hooks
69a73
> options       DDB_CTF                 # kernel ELF linker loads CTF data
123c127
< device                ctl             # CAM Target Layer
---
> #device               ctl             # CAM Target Layer
132a137
> device                hptnr           # Highpoint DC7280, R750
133a139
> device                hpt27xx         # Highpoint RocketRAID 27xx
142a149
> device                aacraid         # Adaptec by PMC RAID
256c263
< device                ath             # Atheros NIC's
---
> device                ath             # Atheros NICs
274a282,283
> options       PADLOCK_RNG     # VIA Padlock RNG
> options       RDRAND_RNG      # Intel Bull Mountain RNG
330,338d338
< # FireWire support
< device                firewire        # FireWire bus code
< # sbp(4) works for some systems but causes boot failure on others
< #device               sbp             # SCSI over FireWire (Requires scbus and da)
< device                fwe             # Ethernet over FireWire (non-standard!)
< device                fwip            # IP over FireWire (RFC 2734,3146)
< device                dcons           # Dumb console driver
< device                dcons_crom      # Configuration ROM for dcons
<
348a349,356
>
> # VirtIO support
> device                virtio          # Generic VirtIO bus (required)
> device                virtio_pci      # VirtIO PCI Interface
> device                vtnet           # VirtIO Ethernet device
> device                virtio_blk      # VirtIO Block device
> device                virtio_scsi     # VirtIO SCSI device
> device                virtio_balloon  # VirtIO Memory Balloon device
Файрволла вообще не касался.

Код: Выделить всё

root@Eviko:/home/mrstalker # cat /etc/rc.conf
hostname="Eviko"
keymap="ru.koi8-r.win.kbd"
ifconfig_re0="SYNCDHCP"
defaultrouter="10.165.32.1"
mpd_enable="YES"
sshd_enable="YES"
ftpd_enable="YES"
ntpd_enable="YES"
powerd_enable="YES"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="NO"
fsck_y_enable="YES"
background_fsck="NO"
На другой машине тоже самое, разве что имя хоста и сетевого интерфейса другое.
loader.conf не создавался
lazhu писал(а):

Код: Выделить всё

options ROUTINGTABLES
присутствует в конфиге ядра? Какое значение?
Хм... может

Код: Выделить всё

options ROUTETABLES
?
В любом случае такой опции нет в конфиге.
FreeBSP писал(а):mpd.conf покажите

Код: Выделить всё

root@Eviko:/home/mrstalker # cat /usr/local/etc/mpd5/mpd.conf
default:
        load l2tp_client
l2tp_client:
        create bundle static B1
        set iface up-script /usr/local/etc/mpd5/up.sh
        set iface down-script /usr/local/etc/mpd5/down.sh
        create link static L1 l2tp
        set link action bundle B1
        set auth authname mrstalker
        set auth password password
        set link max-redial 0
        set l2tp peer tp.internet.beeline.ru
        open

Код: Выделить всё

root@Eviko:/home/mrstalker # cat /usr/local/etc/mpd5/up.sh
#!/bin/sh

route delete $8
route add $8 10.165.32.1
route delete default
route add default $4

Код: Выделить всё

root@Eviko:/home/mrstalker # cat /usr/local/etc/mpd5/down.sh
#!/bin/sh

route delete default
route delete $6
route add default 10.165.32.1

Аватара пользователя
FreeBSP
майор
Сообщения: 2020
Зарегистрирован: 2009-05-24 20:20:19
Откуда: Москва

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение FreeBSP » 2013-10-03 23:13:54

Код: Выделить всё

[0:09]_man_/# cat  /usr/local/etc/mpd5/up.sh /usr/local/etc/mpd5/down.sh
#!/bin/sh

iface=$1
proto=$2
local_ip=$3
remote_ip=$4
authname=$5
peer_addr=$6

DefaultGW=`/bin/cat /var/db/dhclient.leases.* | /usr/bin/grep routers | /usr/bin/head -1 | /usr/bin/awk '{print $3}' | /usr/bin/sed 's/;//'`

/sbin/route delete $4
/sbin/route add $4 $DefaultGW
/sbin/route delete default
/sbin/route add default $4

echo $DefaultGW > /var/db/DefaultGW

#!/bin/sh

iface=$1
proto=$2
local_ip=$3
remote_ip=$4
authname=$5
peer_addr=$6

/sbin/route delete default
/sbin/route add default `cat /var/db/DefaultGW`
/sbin/route delete $remote_ip
[0:09]_man_/# cat /usr/local/etc/mpd5/mpd.conf | grep -A12 l2tp | grep -v auth
        load l2tp_client

l2tp_client:
#
# PPTP client: only outgoing calls, auto reconnect,
# default route points on ISP's end
#

        create bundle static B1

        set iface up-script /usr/local/etc/mpd5/up.sh
        set iface down-script /usr/local/etc/mpd5/down.sh
        set iface enable tcpmssfix

        create link static L1 l2tp
        set link action bundle B1
        set link max-redial 0
        set link mtu 1440
        set link keep-alive 20 75
        set link disable chap


        set l2tp peer tp.internet.beeline.ru

        open
почему у вас $8 ???
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!

mak_v_
проходил мимо

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение mak_v_ » 2013-10-04 0:13:20

Попутно : набор из 2х команд

Код: Выделить всё

route delete default
route add default <ip>
Эквивалентно

Код: Выделить всё

route change default <ip>

Аватара пользователя
FreeBSP
майор
Сообщения: 2020
Зарегистрирован: 2009-05-24 20:20:19
Откуда: Москва

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение FreeBSP » 2013-10-04 1:03:44

mak_v_ писал(а):Попутно : набор из 2х команд

Код: Выделить всё

route delete default
route add default <ip>
Эквивалентно

Код: Выделить всё

route change default <ip>
спасибо за совет, принял к сведению полезную фичу :drinks:
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!

Аватара пользователя
MrStalker
рядовой
Сообщения: 15
Зарегистрирован: 2009-08-23 16:42:33

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение MrStalker » 2013-10-04 17:00:57

FreeBSP писал(а): почему у вас $8 ???
http://mpd.sourceforge.net/doc5/mpd28.html#28
вот почему:
set iface up-script script
set iface down-script script



Mpd can optionally run a user program every time one of network protocols (IPCP/IPv6CP) at the interface is brought up or down. The up-script is called like this:

script interface proto local-ip remote-ip authname [ dns1 server-ip ] [ dns2 server-ip ] peer-address

If up-script exit status is not 0, mpd will kill respective protocol.

The down-script is called like this:

script interface proto local-ip remote-ip authname peer-address
peer-address в up.sh $8, а в down.sh $6

Код: Выделить всё

root@Eviko:/home/mrstalker # cat /usr/local/etc/mpd5/up.sh
#!/bin/sh

route delete $8
route add $8 10.165.32.1
route delete default
route add default $4

echo "0:" $0 > ~mrstalker/1
echo "1:" $1 >> ~mrstalker/1
echo "2:" $2 >> ~mrstalker/1
echo "3:" $3 >> ~mrstalker/1
echo "4:" $4 >> ~mrstalker/1
echo "5:" $5 >> ~mrstalker/1
echo "6:" $6 >> ~mrstalker/1
echo "7:" $7 >> ~mrstalker/1
echo "8:" $8 >> ~mrstalker/1
root@Eviko:/home/mrstalker # cat ~mrstalker/1
0: /usr/local/etc/mpd5/up.sh
1: ng0
2: inet
3: 176.15.196.67/32
4: 85.21.230.206
5: -
6:
7:
8: 85.21.230.206
Почему $8, а не $4? Да потому что благодаря специалистам билайна, иногда попадается VPN сервер, у которого remote-ip != peer-address

Код: Выделить всё

root@Eviko:/home/mrstalker # ifconfig ng0
ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1456
        inet 37.147.155.182 --> 37.147.128.1 netmask 0xffffffff
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
root@Eviko:/home/mrstalker # cat ~mrstalker/1
0:  /usr/local/etc/mpd5/up.sh
1:  ng0
2:  inet
3:  37.147.155.182/32
4:  37.147.128.1
5:  -
6:
7:
8:  85.21.230.201
Вот поэтому давно пришлось править скрипт.
mak_v_ писал(а):Попутно : набор из 2х команд

Код: Выделить всё

route delete default
route add default <ip>
Эквивалентно

Код: Выделить всё

route change default <ip>
Спасибо, полезно :smile:

Аватара пользователя
FreeBSP
майор
Сообщения: 2020
Зарегистрирован: 2009-05-24 20:20:19
Откуда: Москва

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение FreeBSP » 2013-10-04 21:57:32

а на месте $6 и $7 что у вас?
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!

Аватара пользователя
MrStalker
рядовой
Сообщения: 15
Зарегистрирован: 2009-08-23 16:42:33

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение MrStalker » 2013-10-05 7:30:16

$6 и $7 по идее должны быть DNS от VPN сервера.

Аватара пользователя
MrStalker
рядовой
Сообщения: 15
Зарегистрирован: 2009-08-23 16:42:33

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение MrStalker » 2013-10-10 18:36:44

В ходе дальнейших безуспешных попыток разобраться выяснилось:
Если взять 9.1 и обновить до 9.2 (svn://svn.freebsd.org/base/releng/9.2/) получаем такую же проблему.
Собственно тот же результат и с "чистой" FreeBSD-10.0-ALPHA5-amd64-disc1.iso
К тому же в dmesg обнаружилась куча сообщений:

Код: Выделить всё

Loop detected on ng0

Аватара пользователя
MrStalker
рядовой
Сообщения: 15
Зарегистрирован: 2009-08-23 16:42:33

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение MrStalker » 2013-10-30 17:19:48

Чтож... соберём вс что есть.
Проблема заключается в этом изменении http://lists.freebsd.org/pipermail/svn- ... 45550.html
Из-за чего теперь невозможно удалить интерфейсный маршрут.
Проблема присутствует в 9.2, 10 и дальше будет.
Так как это "не баг, а фича", маловероятно что исправят, но надеемся на лучшее.

А пока для тех, кто ещё столкнётся с этой проблемой, я сделал патч
route-fix.patch.tgz
(771 байт) 139 скачиваний
Применять так:

Код: Выделить всё

# tar xvzf route-fix.patch.tgz
# cd /usr/src
# patch < /PATH/TO/route-fix.patch
Далее пересобираем мир и ядро, всё должно работать как и раньше.

morozko
проходил мимо

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение morozko » 2014-12-14 15:01:34

Столкнулся с этой же проблемой.
Маршрут невозможно удалить через route delete.
Но так в лом патчить и пересобирать... (
Решение пришло в голову такое:
в down-скрипте делать route change ремоута-ИП назад на интерфейс ng0.
По удалению интерфейса и маршрут удаляется

Аватара пользователя
MrStalker
рядовой
Сообщения: 15
Зарегистрирован: 2009-08-23 16:42:33

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение MrStalker » 2014-12-14 17:30:37

Хм... не знаю как у вас, а у меня необходимо заменять маршрут в up скрипте при поднятии интерфейса.
И похоже так и дальше патчить придётся, так как убирать эту "фичу" никто не будет уже, да и провайдер перенастраивать VPN сервера тоже не будет.

Гость
проходил мимо

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение Гость » 2014-12-14 22:30:16

Код: Выделить всё

  set ipcp ranges 0.0.0.0/0 0.0.0.0/0
  set iface addrs 0.0.0.0 !fake_ip
  set iface route default
Так пробовали? fake_ip - серый адрес вне ваших сетей.

Аватара пользователя
MrStalker
рядовой
Сообщения: 15
Зарегистрирован: 2009-08-23 16:42:33

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение MrStalker » 2014-12-14 23:47:37

Пробовал, работает конечно.
Но, имхо, это костыль, хотелось по человечески сделать.

Гость
проходил мимо

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение Гость » 2014-12-15 10:24:12

В mpd введено адекватное средство для странных ISP.
Also this command may be used to force specified addresses usage instead of negotiated ones. It may be useful in some specific cases, for example, to avoid routing loop with misconfigured PPTP server. In such case '!' mark specifies IPs to be forced.
Что будет если маршрут к L2TP серверу (tp.internet.beeline.ru) прописать статиком заранее?

morozko
проходил мимо

Re: Удаление маршрута во FreeBSD 9.2

Непрочитанное сообщение morozko » 2014-12-15 13:22:14

MrStalker писал(а):Хм... не знаю как у вас, а у меня необходимо заменять маршрут в up скрипте при поднятии интерфейса.
И похоже так и дальше патчить придётся, так как убирать эту "фичу" никто не будет уже, да и провайдер перенастраивать VPN сервера тоже не будет.
В АП=скрипте надо менять, все верно.
После этого изменения интерфейс маршрута заменяется с ng0 на em0 (сетевой интерфейс, карта в сервере).
Если в дауне не менять, то после разрыва связи и удаления интерфейса ng0 измененный маршрут так и остается висеть и удалить его не выходит.
А вот если в даун-crhbgnt вернуть маршрут к remote-ip обратно на ng0, то после разрыва при удалении интерфейса ng0 этот маршрут тоже удалится