Два CDMA модема на один адрес у провайдера, как так?

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Oleg__K
проходил мимо
Сообщения: 9
Зарегистрирован: 2011-06-22 10:36:03

Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Oleg__K » 2011-06-22 11:04:48

Здрасте всем! Заранее прошу прощения за глупые вопросы - я только осваиваю FreeBSD.
Имеем:
FreeBSD 8.2-RELEASE, работают два модема Novatel U720 и Novatel U760 от Интертелеком, непрозрачный прокси шлет на каждый из них свою группу пользователей, сегодня с утра оба получают один и тот же IP адрес на стороне провайдера. Соответственно имеем в ppp.log:
tun1: IPCP: myaddr 93.180.XX.XX hisaddr = 195.128.182.33
tun1: Warning: iface add: ioctl(SIOCAIFADDR, 93.180.XX.XX -> 195.128.182.33): File exists
tun1: Error: ipcp_InterfaceUp: unable to set ip address
т.е. кто первый встал того и тапки.
в Windows это то выглядит так:
Изображение
Изображение
а во FreeBSD:

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

>ifconfig
vr0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=82808<VLAN_MTU,WOL_UCAST,WOL_MAGIC,LINKSTATE>
        ether 00:1d:7d:22:99:2f
        inet 192.168.XXX.XXX netmask 0xffffff00 broadcast 192.168.XXX.255
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
pflog0: flags=141<UP,RUNNING,PROMISC> metric 0 mtu 33200
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        options=3<RXCSUM,TXCSUM>
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
        inet6 ::1 prefixlen 128
        inet 127.0.0.1 netmask 0xff000000
        nd6 options=3<PERFORMNUD,ACCEPT_RTADV>
pfsync0: flags=0<> metric 0 mtu 1460
        syncpeer: 224.0.0.240 maxupd: 128
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500
        options=80000<LINKSTATE>
        inet 46.247.XXX.XXX --> 195.128.182.33 netmask 0xffffffff
        Opened by PID 480
tun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500
        options=80000<LINKSTATE>
        inet 46.247.XXX.XXX -->195.128.182.33 netmask 0xffffffff
        inet 46.247.XXX.XXX -->195.128.182.33 netmask 0xffffffff
        inet 95.111.XXX.XXX -->195.128.182.33 netmask 0xffffffff
...
        Opened by PID 489
ppp.log

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

Jun 22 11:00:06 fbsd8 ppp[489]: tun1: IPCP: myaddr 95.81.XXX.XXX hisaddr = 195.128.182.33
Jun 22 11:00:06 fbsd8 ppp[489]: tun1: Warning: iface add: ioctl(SIOCAIFADDR, 95.81.XXX.XXX -> 195.128.182.33): File exists
Jun 22 11:00:06 fbsd8 ppp[489]: tun1: Error: ipcp_InterfaceUp: unable to set ip address
Jun 22 11:00:06 fbsd8 ppp[489]: tun1: IPCP: deflink: LayerDown: 95.81.XXX.XXX
ppp.conf

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

#################################################################
# PPP  Sample Configuration File
# Originally written by Toshiharu OHNO
# Simplified 5/14/1999 by wself@cdrom.com
#
# See /usr/share/examples/ppp/ for some examples
#
# $FreeBSD: src/etc/ppp/ppp.conf,v 1.11.2.2.4.1 2010/12/21 17:09:25 kensmith Exp $
#################################################################
default:
 ident user-ppp VERSION (built COMPILATIONDATE)

itc1:
 ident user-ppp VERSION (built COMPILATIONDATE)
 set log PHase Chat LCP IPCP CCP tun command
 set device /dev/cuaU0.0
 set phone "#777"
 set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" AT OK-AT-OK ATE1Q0s7=60 OK \\dATDT\\T TIMEOUT 40 CONNECT"
 set login
 set timeout 0
 set authname "IT"
 set authkey "IT"
# add default HISADDR
 disable ipv6cp

itc2:
 ident user-ppp VERSION (built COMPILATIONDATE)
 set log PHase Chat LCP IPCP CCP tun command
 set device /dev/cuaU4.0
 set phone "#777"
 set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" AT OK-AT-OK ATE1Q0s7=60 OK \\dATDT\\T TIMEOUT 40 CONNECT"
 set login
 set timeout 0
 set authname "IT"
 set authkey "IT"
# add default HISADDR
 disable ipv6cp
как бы так сделать, что бы работало? Спасибо.

Хостинговая компания 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/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Gamerman
капитан
Сообщения: 1717
Зарегистрирован: 2009-05-17 21:01:23
Откуда: Украина, Ужгород - Днепр
Контактная информация:

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Gamerman » 2011-06-22 11:33:32

Хм.. Один и тот же адрес на стороне провайдера частая ситуация, вроде ничем не должна мешать.
Глюк глюком вышибают!

Аватара пользователя
Gamerman
капитан
Сообщения: 1717
Зарегистрирован: 2009-05-17 21:01:23
Откуда: Украина, Ужгород - Днепр
Контактная информация:

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Gamerman » 2011-06-22 11:35:09

rc.conf покажите, где ррр настроено.
Глюк глюком вышибают!

Oleg__K
проходил мимо
Сообщения: 9
Зарегистрирован: 2011-06-22 10:36:03

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Oleg__K » 2011-06-22 11:44:26

Gamerman писал(а):rc.conf покажите, где ррр настроено.

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

# -- sysinstall generated deltas -- # Thu May 26 18:12:18 2011
# Created: Thu May 26 18:12:18 2011
# Enable network daemons for user convenience.
# Please make all changes to this file, not to /etc/defaults/rc.conf.
# This file now contains just the overrides from /etc/defaults/rc.conf.

defaultrouter="192.168.1.5"
gateway_enable="YES"
hostname="fbsd8.local"
ifconfig_vr0="inet 192.168.1.53  netmask 255.255.255.0"

ppp_enable="YES"
ppp_mode="ddial"
ppp_nat="NO"
ppp_profile="itc1 itc2"
ppp_user="root"

# bsnmpd
bsnmpd_enable="YES"

inetd_enable="YES"

ntpdate_enable="YES"
ntpdate_hosts="europe.pool.ntp.org"

saver="warp"

sshd_enable="YES"

mousechar_start="3"

pf_enable="YES"
pf_rules="/etc/pf.conf"
pf_flags=""
pflog_enable="YES"
pflog_logfile="/var/log/pf.log"
pflog_flags=""

accf_http_load="YES"
webmin_enable="YES"
squid_enable="YES"
apache22_enable="YES"
ddclient_enable="YES"
руками тоже не работает

Oleg__K
проходил мимо
Сообщения: 9
Зарегистрирован: 2011-06-22 10:36:03

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Oleg__K » 2011-06-22 12:02:24

Я так понимаю, что проблема с маршрутизацией, сейчас имеем

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

/root/>netstat -r
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            195.128.182.33     UGS         0    72640   tun0
95.111.XXX.XXX     link#5             UHS         0        0    lo0
localhost          link#3             UH          0     4817    lo0
192.168.1.0      link#1             U           8   124736    vr0
192.168.1.53     link#1             UHS         0        0    lo0
195.128.182.33     link#5             UHS         0        0   tun0
это для одного, а когда второй пытается 195.128.182.33 засунуть - ошибка - есть уже, но вот как заставить ppp не пихать то, что уже есть.
Ну и с пониманием маршрутизации у меня всё плохо, но обещаю подтянуть хвосты :oops:

Аватара пользователя
Gamerman
капитан
Сообщения: 1717
Зарегистрирован: 2009-05-17 21:01:23
Откуда: Украина, Ужгород - Днепр
Контактная информация:

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Gamerman » 2011-06-22 12:17:16

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

#ppp_profile="itc1 itc2"
ppp_profile="itc1"   # Which profile to use from /etc/ppp/ppp.conf.
ppp_itc1_unit="1"
ppp_profile="itc2"   # Which profile to use from /etc/ppp/ppp.conf.
ppp_itc2_unit="2"
Попробуйте так
Глюк глюком вышибают!

Oleg__K
проходил мимо
Сообщения: 9
Зарегистрирован: 2011-06-22 10:36:03

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Oleg__K » 2011-06-22 13:43:45

Gamerman писал(а):

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

#ppp_profile="itc1 itc2"
ppp_profile="itc1"   # Which profile to use from /etc/ppp/ppp.conf.
ppp_itc1_unit="1"
ppp_profile="itc2"   # Which profile to use from /etc/ppp/ppp.conf.
ppp_itc2_unit="2"
Попробуйте так
Увы, не работает :( Причем стартует только itc2 на tun2. если потом дать

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

ppp -quiet -ddial -unit1 itc1
стартует и опять не может присвоить IP :unknown:

Oleg__K
проходил мимо
Сообщения: 9
Зарегистрирован: 2011-06-22 10:36:03

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Oleg__K » 2011-06-22 14:21:50

Пока что пришел к идее делать

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

route delete 195.128.182.33
в ppp.linkup, но как-то это "криво", что-ли :unknown: ну и вроде бы работает, а зачем ppp пихает адрес сервера в маршруты, если и без него работает?
вот когда давали разные адреса было красиво :smile:

Аватара пользователя
Gamerman
капитан
Сообщения: 1717
Зарегистрирован: 2009-05-17 21:01:23
Откуда: Украина, Ужгород - Днепр
Контактная информация:

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Gamerman » 2011-06-22 15:35:52

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

# add default HISADDR
Попробуйте снять ремарку
И поиграйтесь с параметром

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

set ifaddr 10.0.0.1/0 10.0.0.2/0
Глюк глюком вышибают!

Oleg__K
проходил мимо
Сообщения: 9
Зарегистрирован: 2011-06-22 10:36:03

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Oleg__K » 2011-06-23 7:48:51

Вот жеж заразы! Опять дают разные! Блинство какое-то :cry:

lap
лейтенант
Сообщения: 608
Зарегистрирован: 2010-08-13 23:39:29
Откуда: Moscow
Контактная информация:

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение lap » 2011-06-23 10:31:07

Есть подозрение что просто на разные серваки попали.
Не сломалось - не чини.

Oleg__K
проходил мимо
Сообщения: 9
Зарегистрирован: 2011-06-22 10:36:03

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Oleg__K » 2011-06-23 14:42:08

Не совсем понятно, как быть, если такое будет повторяться. После каждого перезапуска смотреть как оно там? Может как-то можно ppp.conf поправить?

Аватара пользователя
Gamerman
капитан
Сообщения: 1717
Зарегистрирован: 2009-05-17 21:01:23
Откуда: Украина, Ужгород - Днепр
Контактная информация:

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Gamerman » 2011-06-23 15:03:55

А ві пробовали то, что я говорил?
Глюк глюком вышибают!

Oleg__K
проходил мимо
Сообщения: 9
Зарегистрирован: 2011-06-22 10:36:03

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Oleg__K » 2011-06-23 15:12:53

Gamerman писал(а):А ві пробовали то, что я говорил?
Да пробовал

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

set ifaddr 10.0.0.1/0 10.0.0.2/0
Это, судя по документации, временные адреса для туннеля, которые в процессе подключения заменяются полученными от провайдера.

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

add default HISADDR
устанавливает полученный от провайдера адрес в качестве шлюза по умолчанию - не помогает, как-бы после подключения одного из модемов он уже есть в таблице, о чем и говорит лог.
Да мне и не нужно, машина не выполняет роли шлюза - просто прокси для двух групп пользователей. В squid.conf конфигурируется tcp_outgoing_address по факту подключения на полученные адреса и каждый идет своей дорогой.

Oleg__K
проходил мимо
Сообщения: 9
Зарегистрирован: 2011-06-22 10:36:03

Re: Два CDMA модема на один адрес у провайдера, как так?

Непрочитанное сообщение Oleg__K » 2011-06-23 15:22:53

Вот сейчас, при разных адресах всё работает:

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

/etc/ppp/>ifconfig
vr0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=82808<VLAN_MTU,WOL_UCAST,WOL_MAGIC,LINKSTATE>
        ether 00:1d:7d:22:99:2f
        inet 192.168.1.53 netmask 0xffffff00 broadcast 192.168.1.255
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
pflog0: flags=141<UP,RUNNING,PROMISC> metric 0 mtu 33200
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        options=3<RXCSUM,TXCSUM>
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
        inet6 ::1 prefixlen 128
        inet 127.0.0.1 netmask 0xff000000
        nd6 options=3<PERFORMNUD,ACCEPT_RTADV>
pfsync0: flags=0<> metric 0 mtu 1460
        syncpeer: 224.0.0.240 maxupd: 128
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500
        options=80000<LINKSTATE>
        inet 95.111.XXX.XXX --> 195.128.182.33 netmask 0xffffffff
        Opened by PID 485
tun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500
        options=80000<LINKSTATE>
        inet 95.111.YYY.YYY --> 195.128.182.54 netmask 0xffffffff
        Opened by PID 494

получены 195.128.182.33 и 195.128.182.54

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

/etc/ppp/>netstat -rn
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            195.128.182.33     UGS         0    44331   tun0
95.111.XXX.XXX      link#5             UHS         0        0    lo0
95.111.YYY.YYY     link#6             UHS         0        0    lo0
127.0.0.1          link#3             UH          0       45    lo0
192.168.1.0/24   link#1             U           8    50011    vr0
192.168.1.53     link#1             UHS         0        0    lo0
195.128.182.33     link#5             UHS         0        0   tun0
195.128.182.54     link#6             UHS         0        0   tun1
При одинаковых, после первого подключения нужно сделать

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

route delete 195.128.182.33
а второе подключение его опять добавляет, и всё работает.
Но вот как отличить одно от второго? Анализировать лог на предмет ошибки, отключать второй модем, удалять адрес, опять подключать?
Боюсь не осилю :cry: