Есть машина с 2-мя ethernet-контроллерами. Сеть настроена с помощью network-manager (без GUI), созданы 2 подключения, каждый из которых привязан к MAC контроллера и обоим задан _одинаковый_ статический адрес.
Если в конкретный момент времени подключен только один контроллер, то всё работает хорошо. При подключении второго начинаются проблемы - с одного из контроллеров данные не идут.
По поводу обмена данных. К рассматриваемой машине подключаются платы, которые шлют (только шлют, ничего не принимают) udp-поток с информацией.
Поэтому вариант с маршрутизацией видимо отпадает. Устройства посылают пакеты на фиксированный адрес (192.168.1.137) и изменить этот адрес нет возможности.
Цель - принимать два потока от двух устройств с двух контроллеров с одинаковыми ip-адресами. Использовать свитч или что-нибудь подобное, к сожалению, нельзя.
На машине работает клиент, который слушает udp-сокеты и выводит в дебаг нужную информацию, при наличии потока. При подключении второго устройства, начинаются странности и потоки принимаются только с одного контроллера либо вообще не приходят. Также в информации ifconfig не увеличивается кол-во rx-пакетов, т.е. проблема не в клиенте.
Есть предположение, что грешит network-manager, но через network/interfaces я не добился более хороших результатов, и network-manager всё таки пока необходим, т.к. через него сейчас сделано подключение через 3g модем (при этом в /etc/NetworkManager/NetworkManager.conf стоит manager=true). В interfaces только loopback.
os - ubuntu server 12.04
Кто-нибудь знает как бороться с этим?
2 eth с одним ip
Модераторы: SLEDopit, Модераторы разделов
-
Voral
- Сообщения: 1205
- ОС: Debian Wheezy (amd64)
Re: 2 eth с одним ip
Прикольно....
Офтопик моде он.
Представьте у вас с соседом абсолютно одинаковые адреса. Вы с ним в контрах. Вы согласились бы, чтоб вам приносили зарплату на адрес (при этом отдавали любому кто откроет по указанному адресу).... И курьеры всегда разные........ Я б нет.....
Офтопик моде офф.
Если у вас сложилась подобная ситуация, что IP неприменно определенный и конкретный - вводите в протокол признак устройства. Хотя складывается впечатление, что ПО вы не можете управлять в подобном "ключе"..... Может вы это делаете не совсем с согласия разработчика?
Офтопик был к тому, что даже если вы исхитритесь и сделаете все согласно ваших условий - я б не стал полагаться на надежнойсть данной системы и достоверность обрабатываемых данных....
Офтопик моде он.
Представьте у вас с соседом абсолютно одинаковые адреса. Вы с ним в контрах. Вы согласились бы, чтоб вам приносили зарплату на адрес (при этом отдавали любому кто откроет по указанному адресу).... И курьеры всегда разные........ Я б нет.....
Офтопик моде офф.
Если у вас сложилась подобная ситуация, что IP неприменно определенный и конкретный - вводите в протокол признак устройства. Хотя складывается впечатление, что ПО вы не можете управлять в подобном "ключе"..... Может вы это делаете не совсем с согласия разработчика?
Офтопик был к тому, что даже если вы исхитритесь и сделаете все согласно ваших условий - я б не стал полагаться на надежнойсть данной системы и достоверность обрабатываемых данных....
То что не убивает нас, делает нас сильнее! © Ницше.
When life puts you in tough situations, don’t say "why me". Just say "try me © ?
When life puts you in tough situations, don’t say "why me". Just say "try me © ?
-
Bizdelnick
- Модератор
- Сообщения: 21552
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: 2 eth с одним ip
http://superuser.com/questions/146873/mult...-one-ip-address
На NM, естественно, надлежит забить.
На NM, естественно, надлежит забить.
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
Voral
- Сообщения: 1205
- ОС: Debian Wheezy (amd64)
Re: 2 eth с одним ip
damaty писал(а): ↑03.08.2012 16:30По поводу обмена данных. К рассматриваемой машине подключаются платы, которые шлют (только шлют, ничего не принимают) udp-поток с информацией.
Поэтому вариант с маршрутизацией видимо отпадает. Устройства посылают пакеты на фиксированный адрес (192.168.1.137) и изменить этот адрес нет возможности.
Вот этого я совсем не понял. У вас железяка шлет только на определенный адрес? Или клиент првязан к IP? Обязательно оба устройства загонять в одну сеть? Нельзя сделать две физически разные сети с одинаковой адресацией?
То что не убивает нас, делает нас сильнее! © Ницше.
When life puts you in tough situations, don’t say "why me". Just say "try me © ?
When life puts you in tough situations, don’t say "why me". Just say "try me © ?
-
mikes
- Сообщения: 294
- ОС: ubuntu
Re: 2 eth с одним ip
маловато инфы о построении всего этого дела.
Зачем 2 сетевых?
если есть n устройств которые шлют udp пакеты на жестко заданный ip, то включите их все в свич, а его уже в свою очередь в комп.
вариант 2.
если устройства тоже имеют одинаковые ip mac и тд и вам действительно необходимо различать трафик по устройствам, то зачем одинаковые mac на вашем компе.. одинаковые ip можно задать статически и без них.
Зачем 2 сетевых?
если есть n устройств которые шлют udp пакеты на жестко заданный ip, то включите их все в свич, а его уже в свою очередь в комп.
вариант 2.
если устройства тоже имеют одинаковые ip mac и тд и вам действительно необходимо различать трафик по устройствам, то зачем одинаковые mac на вашем компе.. одинаковые ip можно задать статически и без них.
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: 2 eth с одним ip
одинаковые mac-адреса и ip-адреса?
и те и другие должны быть разными, пакеты всё равно будут приходить на вашу машину·
прослушиваемый ip-адрес клиенту можно указать?
если да, то всё достаточно просто — воспользуйтесь dnat-ом·
если нет, и если бы передо мной стояла такая задача, я бы раскошелился на самый скромный б/у-шный компьютер за сотню долларов (несложно найти и за «спасибо»)·
потому что связываться с изоляцией и контейнеризацией процессов — не хочу·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
damaty
- Сообщения: 11
- ОС: Debian
Re: 2 eth с одним ip
Если у вас сложилась подобная ситуация, что IP неприменно определенный и конкретный - вводите в протокол признак устройства. Хотя складывается впечатление, что ПО вы не можете управлять в подобном "ключе"..... Может вы это делаете не совсем с согласия разработчика?
Я и есть разработчик тех устройств, но менять прошивку теперь нет возможности. Они шлют на один и тот же адрес, но по разным портам. Сделано именно так, потому что раньше они были подключены к машине с одним портом через свитч. Но в связи с различными предположениями о возможных колизиях в свитче, было решено попробовать использовать 2 ethernet-а.
Вот этого я совсем не понял. У вас железяка шлет только на определенный адрес? Или клиент првязан к IP? Обязательно оба устройства загонять в одну сеть? Нельзя сделать две физически разные сети с одинаковой адресацией?
Есть 2 микроконтроллера, оба шлют на адрес 192.168.1.137 поток udp. Но первый использует порты 2006-2008, второй 2009-2011. Устройства не должны как-то общаться между друг-другом, они только посылают данные - сами ничего не принимают и не знают.
если есть n устройств которые шлют udp пакеты на жестко заданный ip, то включите их все в свич, а его уже в свою очередь в комп.
если устройства тоже имеют одинаковые ip mac и тд и вам действительно необходимо различать трафик по устройствам, то зачем одинаковые mac на вашем компе.. одинаковые ip можно задать статически и без них.
Свитч будет использован, если не получится сделать, как написано в первом топике. По поводу адресов - ниже.
одинаковые mac-адреса и ip-адреса?
и те и другие должны быть разными, пакеты всё равно будут приходить на вашу машину·
На машине заданы одинаковые статические ip-адреса для обоих контроллеров, mac-адреса же не изменены - к ним просто "привязаны" подключения в nm. Т.е. mac-адреса на сетевых контроллерах разные.
прослушиваемый ip-адрес клиенту можно указать?
если да, то всё достаточно просто — воспользуйтесь dnat-ом·
если нет, и если бы передо мной стояла такая задача, я бы раскошелился на самый скромный б/у-шный компьютер за сотню долларов (несложно найти и за «спасибо»)·
потому что связываться с изоляцией и контейнеризацией процессов — не хочу·
На клиенте можно указать что угодно. А вот подключаемые устройства менять пока нельзя.
Если честно, я немного не понимаю, почему возникает проблема. Есть 2 независимых контроллера, на них идут 2 независимых потока данных. Почему я не могу корректно обрабатывать их?
В дополнение: устройства имеют одинаковый ip-адрес, и, насколько я помню одинаковый mac. Однако они никак не обрабатывают входящий трафик, даже не пингуются (и другие ARP(?) запросы).
http://superuser.com/questions/146873/mult...-one-ip-address
На NM, естественно, надлежит забить.
Спасибо, я попробую сделать bridge. Но, полностью на NM забить пока не могу (wvdial не осилил, да и модема уже под рукой нет), а одновременное использование nm и /network/interfaces наверное может работать не корректно.
-
Bizdelnick
- Модератор
- Сообщения: 21552
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: 2 eth с одним ip
Должно работать. Бридж только через interfaces можно сделать.
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
mikes
- Сообщения: 294
- ОС: ubuntu
Re: 2 eth с одним ip
но ARP таблица все равно в свиче строится .. он ведь изучает мак устроства на порту по его пакетам, аналогично и на компьютере тоже. если на устройствах действительно одинаковые маки, то у свича будет коллизия конечно, одно устройство удет выброшено.
относительно компьютера.. даже если сетвых карт больше чем 1, ARP таблица будет все равно одна.. и там по идее не может быть одинаковых 2 мака на разных интерфейсах (хотя если задать вручую.. )в системном логе ничего нет по поводу arp spoofing?
скорее всего идея
самая лучшая, подключи 1 контроллер к одному компу и сделай в нем DNAT на второй комп, а в свою оередь ко второму контроллер напрямую. таким образом решится проблема с одинаковыми маками
-
damaty
- Сообщения: 11
- ОС: Debian
Re: 2 eth с одним ip
но ARP таблица все равно в свиче строится .. он ведь изучает мак устроства на порту по его пакетам, аналогично и на компьютере тоже. если на устройствах действительно одинаковые маки, то у свича будет коллизия конечно, одно устройство удет выброшено.
Через свитч всё работает. Просто поток данных довольно большой (3000пакетов в секунду) и бывают пропадания (редко,но немного неприятно). Появилась мысль, что это может происходить из-за свитча.
самая лучшая, подключи 1 контроллер к одному компу и сделай в нем DNAT на второй комп, а в свою оередь ко второму контроллер напрямую. таким образом решится проблема с одинаковыми маками
Это всё стоит на производстве, не дома :) Менять архитектуру нельзя. Если не получится бриджем или каким-нибудь другим способом, запустим через свитч.
в системном логе ничего нет по поводу arp spoofing?
Я гляну. Но насколько я помню, если подключить вместо второго устройства что-нибудь другое, например ноут, то история повторяется - с первого перестают идти пакеты. Хотя тут надо уточнить (проверить).
Завтра попробую бридж.
-
mikes
- Сообщения: 294
- ОС: ubuntu
Re: 2 eth с одним ip
модель свича? они ведь разные бывают однако, попробуйте более производительную модель (посмотрите в сторону flow control) к примеру, если у вас есть представительство длинк, то они дают устройства "на попробовать", ну окромя самых младших.
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: 2 eth с одним ip
бррр·damaty писал(а): ↑04.08.2012 08:24QUOTE писал(а):одинаковые mac-адреса и ip-адреса?
и те и другие должны быть разными, пакеты всё равно будут приходить на вашу машину·
На машине заданы одинаковые статические ip-адреса для обоих контроллеров, mac-адреса же не изменены - к ним просто "привязаны" подключения в nm. Т.е. mac-адреса на сетевых контроллерах разные.
что значит «на машине заданы ip-адреса для контроллеров»?
вы написали, что на двух сетевых интерфейсах вашей машины указали одинаковые ip-адреса·
вот про эти два сетевых интерфейса я и говорил — адреса на них должны быть _разными_·
на apr-запросы linux по умолчанию всё равно ответит (если не сконфигурировано иначе), соотвественно, и ethernet-фреймы после этого будут направлены именно вашей машине·
учитывая, что, как вы пишете, устройства посылают пакеты на разные порты, даже и dnat не нужен·QUOTE писал(а):QUOTE писал(а):прослушиваемый ip-адрес клиенту можно указать?
если да, то всё достаточно просто — воспользуйтесь dnat-ом·
если нет, и если бы передо мной стояла такая задача, я бы раскошелился на самый скромный б/у-шный компьютер за сотню долларов (несложно найти и за «спасибо»)·
потому что связываться с изоляцией и контейнеризацией процессов — не хочу·
На клиенте можно указать что угодно. А вот подключаемые устройства менять пока нельзя.
резюме:
присвойте второму сетевому интерфейсу какой-нибудь ip-адрес и маску, никак не пересекающиеся с тем, что у вас сконфигурировано на первом интерфейсе·
10.0.0.1/24, например·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог