Маршруты по умолчанию и при запуске [solved]

После загрузки системы вот такая таблица маршрутов:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.10.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
127.0.0.0       -               255.0.0.0       !     0      -        0 -
127.0.0.0       127.0.0.1       255.0.0.0       UG    0      0        0 lo

или, ИМХО, более наглядно:

192.168.10.0/24 dev eth0  proto kernel  scope link  src 192.168.10.29 
unreachable 127.0.0.0/8  scope host 
127.0.0.0/8 via 127.0.0.1 dev lo  scope link

При этом, в /etc/hosts

127.0.0.1	localhost
::1		localhost

и

# hostname -f    
localhost

Ну а в /etc/conf.d/net.eth0

config_eth0="192.168.10.35/24"
routes_eth0="default via 192.168.10.1"

predown(){
# The default in the script is to test for NFS root and disallow
# downing interfaces in that case.  Note that if you specify a
# predown() function you will override that logic.  Here it is, in
# case you still want it...
        if is_net_fs /; then
                eerror "root filesystem is network mounted -- can't stop ${IFACE}"
                return 1
        fi

# Remember to return 0 on success
        return 0
}

Далее, поскольку система лежит на ro-разделе, разумеется, некоторые изменяющиеся работают через unionfs:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 13G  3.0G  9.4G  25% /
/dev/root              13G  3.0G  9.4G  25% /
rc-svcdir             1.0M   40K  984K   4% /lib/rc/init.d
udev                   10M  124K  9.9M   2% /dev
shm                   247M     0  247M   0% /dev/shm
shm                   247M     0  247M   0% /dev/shm
tmpfs                 1.0M  8.0K 1016K   1% /unionfs/etc
/unionfs              1.0M  8.0K 1016K   1% /etc
tmpfs                  20K     0   20K   0% /unionfs/var/lock
tmpfs                 3.0M   72K  3.0M   3% /unionfs/var/log
tmpfs                 200K   12K  188K   6% /unionfs/var/run
tmpfs                  10M     0   10M   0% /unionfs/var/spool
tmpfs                 1.0M     0  1.0M   0% /unionfs/var/lib
tmpfs                 1.0M     0  1.0M   0% /unionfs/tmp
/unionfs               20K     0   20K   0% /var/lock
/unionfs              3.0M   72K  3.0M   3% /var/log
/unionfs              200K   12K  188K   6% /var/run
/unionfs               10M     0   10M   0% /var/spool
/unionfs              1.0M     0  1.0M   0% /var/lib
/unionfs              1.0M     0  1.0M   0% /tmp

Вот и непонятно, почему при загрузке не подхватывается маршрут, хотя подхватывается IP-адрес. Снова в ядре чего-то не хватает? На всякий случай, конфиг тут лежит: http://pastebin.ca/1711998

Не знаю на сколько это

Не знаю на сколько это критично, но у меня настройки ВСЕХ сетевых интерфейсов лежат в /etc/conf.d/net и все значения взяты в круглые скобки, как в /etc/conf.d/net.example

config_eth0=( "192.168.10.35/24" )
routes_eth0=( "default via 192.168.10.1" )

baselayout2

Так что, всё верно.

В одном файле держать удобно, если мало интерфейсов, а вот если их много и для каждого свои определённые вещи задействованы, которые зависят именно от интерфейса, то лучше настройки для них в разных файлах держать. Но это всё неважно. Я ж уже написал что IP адрес ПОДХВАТЫВАЕТСЯ. М? ;)

/usr/src/linux/.config

Может быть я и не прав, но:

CONFIG_SMSC_PHY=y
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
CONFIG_NET_VENDOR_3COM=y
CONFIG_VORTEX=y
CONFIG_TYPHOON=y
CONFIG_ETHOC=y
CONFIG_DNET=y
CONFIG_NET_TULIP=y
CONFIG_HP100=y
CONFIG_NET_PCI=y
CONFIG_PCNET32=y
CONFIG_AMD8111_ETH=y
CONFIG_ADAPTEC_STARFIRE=y
CONFIG_B44=y
CONFIG_B44_PCI_AUTOSELECT=y
CONFIG_B44_PCICORE_AUTOSELECT=y
CONFIG_B44_PCI=y
CONFIG_FORCEDETH=y
CONFIG_FORCEDETH_NAPI=y
CONFIG_E100=y
CONFIG_FEALNX=y
CONFIG_NATSEMI=y
CONFIG_NE2K_PCI=y
CONFIG_8139CP=y
CONFIG_8139TOO=y
CONFIG_8139TOO_PIO=y
CONFIG_8139TOO_TUNE_TWISTER=y
CONFIG_R6040=y
CONFIG_SIS900=y
CONFIG_EPIC100=y
CONFIG_SMSC9420=y
CONFIG_SUNDANCE=y
CONFIG_SUNDANCE_MMIO=y
CONFIG_TLAN=y
CONFIG_VIA_RHINE=y
CONFIG_VIA_RHINE_MMIO=y
CONFIG_ATL2=y

Возможно стоит пересмотреть повнимательнее конфиг, включив часть из этих опций модулями?
Ну что-то много карт О_О: тут и VIA и Realtek и AMD...

если это diskless, то должно

если это diskless, то должно быть
config_eth0=( "noop" ), и следовательно не нужна проверка в net файле.
маршрут по умолчанию должен выдавать dhcp сервер.

Именно так.

Именно так. diskless.

Маршрут-то выдаётся:

option option-150 code 150 = text ;
ddns-update-style none ;

subnet 192.168.10.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.10.25 192.168.10.30;
next-server 192.168.10.2;
filename "/boot/pxelinux.0";
option routers 192.168.10.1;
option domain-name-servers 192.168.10.1;
}

но не принимается и наблюдается та же самая картина, что выше. Потому я и решил попробовать статический адрес/маршрут задать в net.eth0. Разумеется, если задать маршрут руками: ip route add default via 192.168.10.1, то без проблем всё появляется

192.168.10.0/24 dev eth0  proto kernel  scope link  src 192.168.10.29 
unreachable 127.0.0.0/8  scope host 
127.0.0.0/8 via 127.0.0.1 dev lo  scope link 
default via 192.168.10.1 dev eth0

Возможно, пытаясь сократить ядро как можно сильнее, я что-то перемудрил. Уже включил advanced router (тем более, что этот компьютер будет им), но результата нет К тому ж непонятно, почему появляется вторая строчка в выовде маршрутов. Вот, скажем, на другом, «обычном» компьютере:

192.168.10.0/24 dev br0  proto kernel  scope link  src 192.168.10.2 
127.0.0.0/8 via 127.0.0.1 dev lo  scope link 
default via 192.168.10.1 dev br0  metric 4

Продолжаю бороться.

Продолжаю бороться. :)

Откатил на baselayout1. Подчистил изменившиеся конфиги. Вроде теперь подхватывается шлюз и прочее, но! (ага, хвост вытащил, нос увяз…)

Теперь система не перезагружается как положено. Но об этом в другой теме.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".