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

FreeBSD 9.0 default router changes unexpectedly Непредсказуемое изенение маршрута по-умолчаниюм

Установлена Система FreeBSD 9.0-RELEASE

Используется в качестве BRAS IPFW + DUMMYNET - фильтрация/шейпинг, pf - NAT

Маршрутизирующего софта нет, трафик - 500-600 Мбит через один интерфейс в пике

Сетевые карты Intel Pro 1000 ET Dual-port (igb) - 2шт. объединены в lagg0, lagg1

 

Проблема : периодически (иногда два раза в день, чаще всего раз в 4 дня, самый длительный интервал - 14 дней) маршрут по-умолчанию меняется на непредсказуемый адрес, запущенный в это время route monitor не регистрирует каких-либо событий. В списке рассылки freebsd-net несколько человек столкнулись с такой же проблемой, есть незакрытый PR с похожими симптомами (PR/157796).

 

Пробовали

net.inet.icmp.log_redirect: 1

net.inet.icmp.drop_redirect: 1

 

В ядре есть

IPFW, DUMMYNET, pf, ALTQ (не используется)

 

Прошу советов/помощи в отладке данной проблемы.

Edited by TretUliy2

Share this post


Link to post
Share on other sites

Проблема решается патчем:

Log:
MFC of r249848

PR:	174749, 157796

Modified:
stable/9/sys/netinet/ip_output.c
Directory Properties:
stable/9/sys/ (props changed)

Modified: stable/9/sys/netinet/ip_output.c
==============================================================================
--- stable/9/sys/netinet/ip_output.c	Thu Apr 25 11:24:40 2013	(r249891)
+++ stable/9/sys/netinet/ip_output.c	Thu Apr 25 11:25:24 2013	(r249892)
@@ -194,8 +194,8 @@ ip_output(struct mbuf *m, struct mbuf *o
hlen = ip->ip_hl << 2;
}

-	dst = (struct sockaddr_in *)&ro->ro_dst;
again:
+	dst = (struct sockaddr_in *)&ro->ro_dst;
ia = NULL;
/*
* If there is a cached route,

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this