The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Loopbaсk не пингуется"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"Loopbaсk не пингуется"  +/
Сообщение от Vaur on 14-Июл-09, 09:08 
Здравствуйте.

Машинка FreeBsd 7.2 release (хотя я так понимаю версия не важна).

Итак есть интерфейс:
ifconfig_rl0="inet 10.0.0.1 netmask 255.255.255.0"

естественно есть lo0:
ifconfig_lo0="inet 127.0.0.1"

Прописываю еще один ip к loopback:
ifconfig_lo0_alias0="inet 10.0.0.2 netmask 255.255.255.0"

Подключаю к rl0 комп. прописываю на его интерфейсе ip адрес:
10.0.0.3

Пингую с него (т.е. с 10.0.0.3) адрес интерфейса 10.0.0.1. Есть пинг.

Пингую с компа (т.е. с 10.0.0.3) адрес 10.0.0.2, т.е. адрес привязанные к loopbackу. Не пингуется!

Понимаю, что что-то не сделал, но не могу найти информацию, что не сделал.
Подскажите как заставить отзываться ip привязанный к loopback интерфейсу.

P.S. Естественно в rc.conf: gateway_enable="YES"

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Loopbaсk не пингуется"  +/
Сообщение от ronin (??) on 14-Июл-09, 09:40 
>[оверквотинг удален]
>Пингую с него (т.е. с 10.0.0.3) адрес интерфейса 10.0.0.1. Есть пинг.
>
>Пингую с компа (т.е. с 10.0.0.3) адрес 10.0.0.2, т.е. адрес привязанные к
>loopbackу. Не пингуется!
>
>Понимаю, что что-то не сделал, но не могу найти информацию, что не
>сделал.
>Подскажите как заставить отзываться ip привязанный к loopback интерфейсу.
>
>P.S. Естественно в rc.conf: gateway_enable="YES"

Ммм... Во-первых, нельзя ставить адреса из одной подсети на разные интерфейсы, потому что это мини-конфликт маршрутизации - бздя не знает на какой интерфейс этот траффик направить. В линухе такое прокатывает, но, имхо, это не правильно. Странно вообще как Вам бздя разрешила такое замутить. Во-вторых - в бзде алиас определяется по-другому:

ifconfig rl0 192.168.0.5 netmask 255.255.255.255 alias

(обратите внимание на маску подсети). Ну и в rc.conf соответственно писать надо.

В-третьих на кой чёрт этот алиас вопше на loopback-интерфейсе? Или я что-то не то курю?


respect,
ronin

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Loopbaсk не пингуется"  +/
Сообщение от fx (ok) on 14-Июл-09, 12:15 
>В-третьих на кой чёрт этот алиас вопше на loopback-интерфейсе?

тот же вопрос.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Loopbaсk не пингуется"  +/
Сообщение от Vaur on 14-Июл-09, 12:33 
>>В-третьих на кой чёрт этот алиас вопше на loopback-интерфейсе?
>
>тот же вопрос.

Насраиваю bgp, нужен он мне на Loopbacke, что бы к loopbackу bgp привязать.
Типа для того, что бы когда упадет интерфейс bgp вместе с интерфейсом не упал.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Loopbaсk не пингуется"  +/
Сообщение от Vaur on 14-Июл-09, 12:36 
>ifconfig rl0 192.168.0.5 netmask 255.255.255.255 alias

Знаю что так :), просто выше я строки из rc.conf'а привел.
Да и с маской все понимаю, просто уж и так и так писал никак...
Говорят делай все заработает....

>[оверквотинг удален]
>
>(обратите внимание на маску подсети). Ну и в rc.conf соответственно писать надо.
>
>
>В-третьих на кой чёрт этот алиас вопше на loopback-интерфейсе? Или я что-то
>не то курю?
>
>
>respect,
>ronin

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Loopbaсk не пингуется"  +/
Сообщение от ronin (??) on 14-Июл-09, 16:48 
>>ifconfig rl0 192.168.0.5 netmask 255.255.255.255 alias
>
>Знаю что так :), просто выше я строки из rc.conf'а привел.
>Да и с маской все понимаю, просто уж и так и так
>писал никак...
>Говорят делай все заработает....

Сорри, тут уж я оплошал меленько... Давно с бздёй не работал. Вопшем, цитата из man ifconfig в студию:

     alias   Establish an additional network address for this interface.  This
             is sometimes useful when changing network numbers, and one wishes
             to accept packets addressed to the old interface.  If the address
             is on the same subnet as the first network address for this
             interface, a non-conflicting netmask must be given.  Usually
             0xffffffff is most appropriate.

Тоесть, если на этом интерфейсе нет айпи с того же субнета, то у Вас алиас оперделён правильно.

Теперь остаётся только метод научного тыка. Начнём с того, можно ли на разных интерфейсах ставить айпишки из одного субнета. Как я уже сказал, низзя в бзде... По-нормальному низзя. Если сможете через какой-либо изврат - расскажите секреты мастерства :-) (подсказка - можно попробовать забриджевать lo0 и rl0).


>Насраиваю bgp, нужен он мне на Loopbacke, что бы к loopbackу bgp привязать.
>Типа для того, что бы когда упадет интерфейс bgp вместе с интерфейсом не упал.

Хм... а какая в принципе разница, крутится bgpd/quagga/zebra, или нет, если интерфейс лежит? И стоит ли ради этого так извращаться? Или я опять не ту траву курю?


respect,
ronin

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Loopbaсk не пингуется"  +/
Сообщение от Vaur on 15-Июл-09, 06:13 
>Тоесть, если на этом интерфейсе нет айпи с того же субнета, то
>у Вас алиас оперделён правильно.

Спасибо за пояснение. Значит это делаю правильно.

>
>Теперь остаётся только метод научного тыка. Начнём с того, можно ли на
>разных интерфейсах ставить айпишки из одного субнета. Как я уже сказал,
>низзя в бзде... По-нормальному низзя. Если сможете через какой-либо изврат -
>расскажите секреты мастерства :-) (подсказка - можно попробовать забриджевать lo0 и
>rl0).

А как все таки забриджевать? Намек на комманду можно?

>Хм... а какая в принципе разница, крутится bgpd/quagga/zebra, или нет, если интерфейс
>лежит? И стоит ли ради этого так извращаться? Или я опять
>не ту траву курю?

Вот из описания bgp - с эту сторону смотрю:
Loopback interfaces часто используются IBGP peer'ами. Приемущество использования loopback interfaces заключается в том, что настройка маршрутизации перестает быть связана с IP адресом физического интерфейса. При этом, даже если физический интерфейс будет down, это никоим образом не повлияет на маршрутизацию между автономными системами, т.к. он будет использовать некий псевдо-ip адрес интерфейса loopback, как идентифицирующий данный роутер.

На приведенном выше рисунке роутеры A и B обмениваются таблицами маршрутизации по IBGP в пределах AS 100. Если при конфигурировании роутера A в качестве IP адреса neighbor'а мы укажем IP адрес одного из его eth iface'ов, то все, конечно же, будет работать. До тех пор, пока этот eth iface по каким-то причинам не упадет. Если это случится, то обмен таблицами маршрутизации, равно как и траффиком, прекратится в результате того, что станет невозможным установить TCP connection между раутерами A и B.

Поэтому, вместо того чтобы указывать IP адрес eth iface'а раутера B, мы сделаем следующее:

а) сконфигурим раутер B таким образом, чтобы он получил некоторый дополнительный IP адрес -- адрес его loopback iface'а.

И вот на п.А я споткнулся? :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Loopbaсk не пингуется"  +/
Сообщение от ronin (??) on 15-Июл-09, 07:58 
>А как все таки забриджевать? Намек на комманду можно?

Тут одной командой не обойдёшся. Здесь идёт серия команд. Вот что у меня на моём бридже:

Конфигурация кернела:

### ADDED OPTIONS ###
option IPFIREWALL
option IPFIREWALL_VERBOSE
option IPFIREWALL_VERBOSE_LIMIT=100
option IPDIVERT
option DUMMYNET
#option BRIDGE
device if_bridge

options IPFIREWALL_FORWARD

options         IPFILTER
options         IPFILTER_LOG

options         HZ=1000
options         MAXCONS=1024
options         NETGRAPH
options         NETGRAPH_BPF
options         NETGRAPH_ETHER
options         NETGRAPH_IFACE
options         NETGRAPH_KSOCKET
options         NETGRAPH_SOCKET
options         NETGRAPH_TEE

device          pf
device          pflog
device          pfsync

options         ALTQ
options         ALTQ_CBQ
options         ALTQ_RED
options         ALTQ_RIO
options         ALTQ_HFSC
options         ALTQ_CDNR
options         ALTQ_PRIQ

Эти опции добавлены в девственно чистый дефолт конфиг. Больше ничего там я не менял.


В rc.conf:

gateway_enable="YES"

keymap="us.iso"

sshd_enable="YES"

sendmail_enable="NONE"

defaultrouter="172.16.0.255"

hostname="brigde1"

firewall_enable="YES"
firewall_script="/opt/lanadmin/bridge.sh"

fsck_y_enable="YES"
background_fsck="NO"

#smartd_enable="YES"


В /opt/lanadmin/bridge.sh:

#!/bin/sh

cmd_ipfw="/sbin/ipfw"
cmd_ifconfig="/sbin/ifconfig"
cmd_route="/sbin/route"

bridge_iface0="bridge0"

eth_iface0="fxp0"
eth_iface1="fxp1"

eth_iface0_ip="172.16.0.254"
eth_iface0_netmask="255.255.0.0"

eth_iface1_ip="172.16.0.253"
eth_iface1_netmask="255.255.0.0"

default_gateway="172.16.0.255"

### SETUP_BRIDGE ###

${cmd_ifconfig} ${bridge_iface0} create
${cmd_ifconfig} ${bridge_iface0} addm ${eth_iface0}
${cmd_ifconfig} ${bridge_iface0} addm ${eth_iface1}

${cmd_ifconfig} ${eth_iface0} up
${cmd_ifconfig} ${eth_iface1} up
${cmd_ifconfig} ${bridge_iface0} up

${cmd_ifconfig} ${eth_iface0} inet ${eth_iface0_ip} netmask ${eth_iface0_netmask}
${cmd_ifconfig} ${eth_iface1} inet ${eth_iface1_ip} netmask ${eth_iface1_netmask}


Далее следуют правила фаерволла, но здесь они не так уж и важны (правила Вам в любом случае писать самому с учётом вашей топологиии). Здесь только поменяйте один их интерфейсов на lo0. Чесно скажу - не знаю заработает ли с lo0, но попробовать можно.


Ага, и вот на чём это хозяйство крутится:

brigde1# uname -a
FreeBSD brigde1 7.1-RELEASE FreeBSD 7.1-RELEASE #0: Sun Feb 15 16:06:04 UTC 2009     root@:/usr/src/sys/i386/compile/BRIDGE  i386
brigde1#


И вот как оно смотрится:

brigde1# ifconfig -a
fxp0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=8<VLAN_MTU>
        ether 00:02:55:e4:82:db
        inet 172.16.0.254 netmask 0xffff0000 broadcast 172.16.255.255
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
fxp1: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=8<VLAN_MTU>
        ether 00:06:29:29:77:f4
        inet 172.16.0.253 netmask 0xffff0000 broadcast 172.16.255.255
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> metric 0 mtu 1500
pflog0: flags=0<> metric 0 mtu 33204
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x5
        inet6 ::1 prefixlen 128
        inet 127.0.0.1 netmask 0xff000000
pfsync0: flags=0<> metric 0 mtu 1460
        syncpeer: 224.0.0.240 maxupd: 128
bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        ether b2:7c:39:75:53:81
        id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15
        maxage 20 holdcnt 6 proto rstp maxaddr 100 timeout 1200
        root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0
        member: fxp1 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
                ifmaxaddr 0 port 2 priority 128 path cost 200000
        member: fxp0 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
                ifmaxaddr 0 port 1 priority 128 path cost 200000
brigde1#

А вообще, по бриджеванию море инфы. На том же опеннете (откуда яи брал всё это). Ищите, читайте (хотя бы для понимания, поскольку все команды и конфиги у Вас уже есть).


Удачи!

respect,
ronin

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Loopbaсk не пингуется"  +/
Сообщение от Vaur on 15-Июл-09, 08:33 
С ядром работаю, без проблем.
С firewall тоже...
бридж ни разу не поднимал.

Попробую разобраться, в Вашем конфиге фаервола.

Спасибо. )

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Loopbaсk не пингуется"  +/
Сообщение от Vaur on 15-Июл-09, 08:54 
Все разобрался... что до как!
Осталось попробовать.

>[оверквотинг удален]
>${cmd_ifconfig} ${bridge_iface0} create
>${cmd_ifconfig} ${bridge_iface0} addm ${eth_iface0}
>${cmd_ifconfig} ${bridge_iface0} addm ${eth_iface1}
>
>${cmd_ifconfig} ${eth_iface0} up
>${cmd_ifconfig} ${eth_iface1} up
>${cmd_ifconfig} ${bridge_iface0} up
>
>${cmd_ifconfig} ${eth_iface0} inet ${eth_iface0_ip} netmask ${eth_iface0_netmask}
>${cmd_ifconfig} ${eth_iface1} inet ${eth_iface1_ip} netmask ${eth_iface1_netmask}

Вопрос, а зачем это именно в фаерволе Вы делаете. Почему не сделать через rc.conf?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "Loopbaсk не пингуется"  +/
Сообщение от Vaur on 15-Июл-09, 09:46 
Картина такая

# ifconfig bridge0 create
# ifconfig bridge0 addm rl0
# ifconfig bridge0 addm lo0
ifconfig: BRDGADD lo0: Invalid argument  - Не дает :(

Думаю ладно:
делаю:
# ifconfig lo1 create
# ifconfig bridge0 addm lo1
ifconfig: BRDGADD lo1: Invalid argument - Все равно не дает :(

При этом тут же делаю:
# ifconfig bridge0 addm rl1
#
Все нормально

Отсюда делаю вывод, что loopback интерфейсы засовывать в bridge нельзя :(
Так? Кто что скажет.

Так как же решить мою проблему? Есть идеи?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "Loopbaсk не пингуется"  +/
Сообщение от ronin (??) on 15-Июл-09, 10:28 
>[оверквотинг удален]
>
>При этом тут же делаю:
># ifconfig bridge0 addm rl1
>#
>Все нормально
>
>Отсюда делаю вывод, что loopback интерфейсы засовывать в bridge нельзя :(
>Так? Кто что скажет.
>
>Так как же решить мою проблему? Есть идеи?

Очевидно, нельзя. Обьяснения, думаю, нужно искать в сорсах кернела :-)
Может создать какой-либо фейк-интерфейс? ppp0/tun0/...?

respect,
ronin

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

12. "Loopbaсk не пингуется"  +/
Сообщение от ronin (??) on 15-Июл-09, 10:30 
>Очевидно, нельзя. Обьяснения, думаю, нужно искать в сорсах кернела :-)
>Может создать какой-либо фейк-интерфейс? ppp0/tun0/...?

Вдогонку: или тупо навесить на машину ещё одну сетевуху, кабель в которую не включать, пусть работает вхолостую. А на неё навешать этот доп. адрес и забриджевать с нужным интерфейсом.


respect,
ronin

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

13. "Loopbaсk не пингуется"  +/
Сообщение от Vaur on 15-Июл-09, 15:15 
>>Очевидно, нельзя. Обьяснения, думаю, нужно искать в сорсах кернела :-)
>>Может создать какой-либо фейк-интерфейс? ppp0/tun0/...?
>
>Вдогонку: или тупо навесить на машину ещё одну сетевуху, кабель в которую
>не включать, пусть работает вхолостую. А на неё навешать этот доп.
>адрес и забриджевать с нужным интерфейсом.
>
>
>respect,
>ronin

Короче нашел вот это:
http://microsin.ru/content/view/267/43/
ссылка про loopback:

Если нужно обеспечить доступ к Loopback Interface снаружи, то необходимо указать маршрут до подсети, которой принадлежит Loopback Interface.

Т.е. только static роутингом :(

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру