Здравствуйте, уважаемые!
Прошу сильно не пинать, на убунте только месяц сижу...

Преамбула.
имеется два компа, один с ХРюшей, другой с  КУбунту.
к КУбунту подключен USBмодем от Beeline MF100 с картой Megafon'а, компы соединены через эзернет.
адрес ХРюши 192.168.0.2, шлюз 192.168.0.1, все стандартно.

а вот на Ubuntu сделано следующее:
1. разлочен модем
2. переведен в режим _модем_онли_
3. грохнут нафиг Нетворк_Манагер в связи с его неописуемой глючностью, поставлен КДЕ_Нетворк_Манагер и тоже грохнут по той же причине. В настоящий момент установлен Wicd, но руки чешутся сделать ему remove
4. в связи с неумением Висиди работать с такими модемами используется KPPP
5. Установлен и настроен Сквид с фильтрами и антивирем

все как бэ работает но до следующей перезагрузки. После перезагрузки приходится подключатся к тырнету, затем отключатся, выходить из KPPP, запускать ее заново и только тогда появляется пинг до ХР. Причина - отсутствие правильного маршрута в route, который сбрасывается командой
defaultroute replacedefaultroute  в файле /etc/ppp/options

ах да... еще есть виртуалбокс и на нем тоже сеть настроена по интерфейсу br0

ifconfig

 Консоль:

br0       Link encap:Ethernet  HWaddr 00:25:22:c2:f2:d6 
          inet addr:192.168.0.3  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:557 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:41338 (41.3 KB)

eth0      Link encap:Ethernet  HWaddr 00:25:22:c2:f2:d6 
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:668 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:51633 (51.6 KB)
          Interrupt:45 Base address:0x2000

lo        Link encap:Локальная петля (Loopback) 
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:57209 errors:0 dropped:0 overruns:0 frame:0
          TX packets:57209 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:52890151 (52.8 MB)  TX bytes:52890151 (52.8 MB)

ppp0      Link encap:Протокол PPP (Point-to-Point Protocol) 
          inet addr:10.185.231.89  P-t-P:10.64.64.64  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:147578 errors:120 dropped:0 overruns:0 frame:0
          TX packets:128197 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:174801667 (174.8 MB)  TX bytes:9745906 (9.7 MB)

route

 Консоль:

10.64.64.64     *               255.255.255.255 UH    0      0        0 ppp0
192.168.0.0     *               255.255.255.0   U     0      0        0 br0
192.168.0.0     *               255.255.255.0   U     0      0        0 eth0
default         raptor.local    0.0.0.0         UG    0      0        0 eth0
default         *               0.0.0.0         U     0      0        0 ppp0

Амбула
надоело каждый раз шаманить с KPPP, хочу чтоб ррр поднималось само, без моего участия - пнул по кнопке включения и все. Надоели глючные Нетворк_Манагеры: у Висиди оказалась пренеприятнейшая особенность - если выдернуть шнур езернета, он отрубает ip адрес eth0, а вместе с ним ессно не работает ничего, т.к. в Ubuntu в обозревателе прописан прокси...
помогите забороть, плииз!

2

1.запротоколируй все свои действия по запуску сети до рабочего состояния ..
2.Напиши на баше скрипт который будет повторять все твои действия из п.1 ..
3.Закинь запуск этого скрипта в /etc/rc.d/rc.local ну или что там в Убунте на загрузке ..( как вариант закинуть его старт в автозапуск сессии пользователя)
profit !

" si contuderis stultum in pila quasi tisanas feriente desuper pilo non auferetur ab eo stultitia eius " © Proverbs 27:22

3

ммммм..... не получится это сделать башем, у КРРР вроде бы нет управления извне, ну или я о них ничего не знаю.
Да и вообще я уже согласен на отсутствие всяких визуализаторов, хотя с ними конечно няшно, лишь бы все работало без моего участия.

может wvdial настроить? но с ним проблема была - не конектился, мож настройки не те или руки подточить чем...

4 (17.09.2011 19:16:26 отредактировано gramozeka)

Vaicartana пишет:

не получится это сделать башем,

:lol: - патсталом ... когда отпустит продолжу  :lol:  :lol:  :lol:  :lol:

P.S. man pppd , man bash в помощь , на будущее линукс тем и отличается от винды , что для нормальной работы всей системы графический интерфейс создан лишь для комфорта - он второстепенная , не имеющая значения прокладка , абсолютно всё можно сделать в голой консоли , а значит любою последовательность действий (любой сложности ) в системе можно записать в виде скрипта на том же баше ( не панацея ) , перле , питоне , js и т.п. ..

" si contuderis stultum in pila quasi tisanas feriente desuper pilo non auferetur ab eo stultitia eius " © Proverbs 27:22

5

gramozeka, ну ладно, не издевайся над человеком, для него не понятно что если у приложения гуй, то ему кажется что управлять им можно только гуем...  wink

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

6

оч. смешно конечно...  ah

т.е. kppp - это надстройка над pppd?
man kppp ничего не дает.

7 (17.09.2011 21:27:54 отредактировано zenon)

Vaicartana, да что ты будешь делать....  oO
kppp — KDE программа дозвона и интерфейс к pppd. kppp в основном используется для установления соединения с интернет-провайдером с помощью модема по телефонной линии. Однако она может быть использована и в других ситуациях, где необходим протокол PPP. Также она является графическим интерфейсом к демону pppd, позволяющим настраивать его технически не искушённым пользователям. http://ru.wikipedia.org/wiki/Kppp

 Консоль:
$ man pppd

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

8

Благодарю, newzenon. Теперь понятно.
а wvdial тоже получается pppd использует?
т.е. в принципе можно вообще забить на все подобные проги и просто сконфигурировать pppd, я правильно понял?

9

Как пример https://wiki.archlinux.org/index.php/Di … 8%D0%B9%29
Вообще я давно модемами не пользовался, но информации и тем по этому поводу что тут что в гугле - тонны.
Делай уже что нибудь - сюда с проблемами сделанного.  smile

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

10

newzenon пишет:

gramozeka, ну ладно, не издевайся над человеком,

да я не издеваюсь ,  просто давно так не смеялся  ag , обычно народ уже подкованный приходит , а тут такой "наивный китайский юноша" , конечно поможем чем можем , мы ж не троли какие  wink  ..

" si contuderis stultum in pila quasi tisanas feriente desuper pilo non auferetur ab eo stultitia eius " © Proverbs 27:22

11

и таки снова здравствуйте!

newzenon пишет:

Как пример https://wiki.archlinux.org/index.php/Di … 8%D0%B9%29

что то ничего не получилось по этой ссылке сделать - модем не подключается, хотя и определяется демоном.

вот мой вариант /etc/ppp/options

lock
modem
debug
/dev/ttyUSB2
115200
defaultroute
noipdefault
user megafon
connect 'chat -t60 \\"\\" ATZ OK ATX3 OK AT+CGDCONT=1,"IP","internet" OK ATDT*99# CONNECT'

pap-secrets

"megafon"    *    "megafon"
megafon    *    megafon

причем я пароли не прописывал, видать kppp установило или еще кто, пока настраивал...

Что сейчас получилось:
- снес wicd и прописал в interfaces свой айпишник
- настроил wvdial на дозвон, пока инет поднимается командой sudo wvdial с терминала
- попытался настроить автодозвон вот так http://help.ubuntu.ru/wiki/настройка_сети_вручную пока эпик фэйл
по ссылке выше сделал следующее
/etc/network/interfaces

#ppp modem
iface ppp0 inet wvdial
provider wvdial
auto ppp0

в ответ тишина...
да еще после этой добавки куда то делся ip у eth0, пришлось опять вручную прописать

gramozeka пишет:

просто давно так не смеялся

не знаю что там смешного было, в винде если приложение не имеет внешних команд то ничего с ним не сделать, кроме того kppp таких команд так же не имеет и все делается через pppd, что, по сути, совсем другая программа и пофиг что kppp всего лишь надстройка над pppd - проги разные!

вобщем помогите сделать следующее:
- чтоб ip был всегда! независимо от состояния проводочка - воткнут он или нет(у меня компы кросовером соеденины)
- добить автоподключение wvdial'у

и я впаду в нирвану, а перед этим напишу руководство к действиям ))

12

$ sudo wvdial

после этого подключается? - ничего вводить не надо? - тогда в post-up сетевой поставь.

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

13

да, после sudo wvdial подключается и вводить больше ничего не надо.

тут вот какая проблема... нет у меня в каталоге /etc/network папки post-up.
есть if-post-down.d, создал по анлогии if-post-up.d - ноль эмоций, закинул в if-up.d - выполняется при поднятии eth0 и забывает про br0, т.е.
ifconfig выглядит так

 Консоль:

eth0      Link encap:Ethernet  HWaddr 00:25:22:c2:f2:d6 
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:69 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:9622 (9.6 KB)
          Interrupt:45 Base address:0x2000

lo        Link encap:Локальная петля (Loopback) 
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:2459 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2459 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:183116 (183.1 KB)  TX bytes:183116 (183.1 KB)

ppp0      Link encap:Протокол PPP (Point-to-Point Protocol) 
          inet addr:10.214.20.173  P-t-P:10.64.64.64  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:7 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:130 (130.0 B)  TX bytes:181 (181.0 B)

я думаю это потому, что поднимается первый интерфейс из списка, а это как раз eth0, ну на нем и встаем...
на всякий пожарный содержимое файла ppp0 помещенного в if-up.d

#!/bin/sh
wvdial
exit 0  <- это прилепил уже для проверки, может выйдет... не выходит.

замечу, что набрав в терминале sudo wvdial получаю "подвисшую сессию", т.е. он не возвращает управление в консоль, пока не нажмешь Стрл+С, чем, собственно, и прерывается соединение.
По этой же причине подвисает и команда sudo /etc/init.d/networking restart

14 (19.09.2011 14:30:07 отредактировано zenon)

Vaicartana, man interfaces http://zenon.sytes.net/spravka-po-nastr … nterfaces/
Пример: /etc/network/interfaces

auto eth0
  iface eth0 inet static
    address 192.168.0.1
    netmask 255.255.255.0
    network 192.168.0.0
    broadcast 192.168.0.255
    pre-up <command>
    post-up <command>
Vaicartana пишет:

замечу, что набрав в терминале sudo wvdial получаю "подвисшую сессию",

"&" добавь для запуска в фоне.

$ wvdial &
История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

15

Ура! Заработало!!!

почему то все еще слетает ip у eth0, но я его в if-up.d прописал принудительно командой ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up
и еще пришлось в if-down.d добавить killall pppd (кста, может есть более мягкий способ модему трубу повесить?) а то при перегрузки сети модем в активном состоянии находится.

нуссс, щаз по горячим следам мануальчик напишу )))

16

Vaicartana пишет:

Ура! Заработало!!!
нуссс, щаз по горячим следам мануальчик напишу )))

Запостить не забудь.

Vaicartana пишет:

но я его в if-up.d  .. и еще пришлось в if-down.d ...

Лучше используй interfaces - нагляднее получается, и не переживать что если что-то забыл в каталогах if-up.d if-down.d...
pre-up команда
up команда
post-up команда
down команда
pre-down команда
post-down команда

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

17

Vaicartana пишет:

почему то все еще слетает ip у eth0, но я его в if-up.d прописал принудительно командой ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up

auto ppp0
     iface ppp0 inet wvdial
     provider wvdial
     pre-up /sbin/ifconfig eth0 up
История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

18

как и обещал...

Итак имеем: два домашних компа и один USB модем модели MF100 находящийся в рабстве у Билайна. Имеется так же сим-карта Мегафона (дешевле тариф по нашему региону). Компы меж собой соединены кросовером (на самом деле это не существенно, компов может быть и больше, нужен только свитч, а кросовер на современных сетевухах и вовсе не нужен)
Есть разумное желание использовать модем на обоих компах.

Приступим.
Для начала выкупим из рабства модем. Ползем сюда http://startubuntu.ru/?p=5641 и делам по инструкции.
Лично я споткнулся на том, что пытался запустить usb_modeswitch без sudo, пока дошло... хехе ))
minicom разумеется тоже надо запускать командой

sudo minicom -s

Все графические оснастки, как то Network-Manager, KNetwork-Manager, Wicd имеют одну особенность - напрочь игнорируют настройки файла /etc/network/interfaces поэтому либо оставляем оснастку либо пишем вручную. Я выбрал второй вариант, т.к. не вижу необходимости постоянно лазить в сеть и что то там менять. Сеть должна работать и все. Без бубна!

Итак, любым способом сносим  Network-Manager - можно через Управление Программами, можно через apt-get remove (или даже purge) кому как нравится  и перегружаемся. Почему то простая перегрузка сети командой

sudo /etc/init.d/networking restart

не действует.

После перезагрузки система принимает настройки из /etc/network/interfaces
который должен содержать примерно следующее

#LWS
auto eth0
  iface eth0 inet static
  address 192.168.0.1
  netmask 255.255.255.0
  network 192.168.0.0
  broadcast 192.168.0.255

# The loopback network interface
auto lo
  iface lo inet loopback

редактируем свой файл по этому шаблону и перегружаем сеть

открываем терминал и вводим
ifconfig

 Консоль:

eth0      Link encap:Ethernet  HWaddr XX:XX:XX:XX:XX:XX
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:69 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:9622 (9.6 KB)
          Interrupt:45 Base address:0x2000

lo        Link encap:Локальная петля (Loopback)
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:2459 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2459 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:183116 (183.1 KB)  TX bytes:183116 (183.1 KB

на этом настройка локалки заканчивается и начинается пляска вокруг модема.
У меня не получилось настроить модем через pppd напрямую, я использовал wvdial (хотя KPPP тоже отлично работает, но не имеет командной строки, поэтому не используется)
Устанавливаем wvdail

sudo apt-get install wvdial

и вводим команду
sudo wvdialconf

она произведет опрос всех модемов и запишет конфигурационный файл /etc/wvdial.conf
в моем случае модем распознался на /dev/ttyUSB2
корректиреум этот файл следующем образом

[Dialer Defaults]
Init1 = ATZ
Init2 = AT+CGDCONT=1,"IP","internet"
Modem Type = Analog Modem
Baud = 115200
New PPPD = yes
Modem = /dev/ttyUSB2
ISDN = 0
Dial Attempts = 1
Phone = *99#
Password = megafon
Username = megafon

следует обратить внимание на строку Init2, во-первых wvdialconf вместо нее пропишет отсебятину, а во-вторых у каждого оператора своя строка инициализации, в мтс, например, эта строка выглядит так

Init2 = AT+CGDCONT=1,"IP","internet.mts.ru"

в общем случае в гугле есть все настройки для каждого оператора. Кстати Phone тоже у операторов отличается.

теперь стоит проверить соединение

sudo wvdial

если все впорядке должно показать вот это

 Консоль:

--> Modem initialized.
--> Sending: ATDT*99#
--> Waiting for carrier.
ATDT*99#
CONNECT 3600000
--> Carrier detected.  Waiting for prompt.
--> Don't know what to do!  Starting pppd and hoping for the best.
--> Starting pppd at Tue Sep 20 00:00:36 2011
--> Pid of pppd: 30914
--> Using interface ppp0
--> pppd: Y[7f]
--> pppd: Y[7f]
--> pppd: Y[7f]
--> pppd: Y[7f]
--> pppd: Y[7f]
--> local  IP address 10.204.84.171
--> pppd: Y[7f]
--> remote IP address 10.64.64.64
--> pppd: Y[7f]
--> primary   DNS address 10.27.42.82
--> pppd: Y[7f]
--> secondary DNS address 10.27.42.83
--> pppd: Y[7f]

цифирки конечно будут другими, кроме того ваш ip вообще всякий раз будет другой, а вот шлюз (remote) и днс - не меняются.

Если все получилось мы почти у финиша. Осталось прикрутить скрипт поднимающий модем всякий раз когда устанавливается сеть.
снова идем в /etc/network/interfaces и меняем его так

#LWS
auto eth0
  iface eth0 inet static
  address 192.168.0.1
  netmask 255.255.255.0
  network 192.168.0.0
  broadcast 192.168.0.255
  post-up wvdial &
  post-down killall pppd

# The loopback network interface
auto lo
  iface lo inet loopback

#PPP modem
auto ppp0
  iface ppp0 inet wvdial
  provider wvdial

ну и напоследок. Уж не знаю почему, но у меня eth0 все время терял ip адрес. Поэтому я сделал просто: в ppp0 добавил строку

  pre-up /sbin/ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up

именно в таком виде заработало.
Если все еще работает pppd валим его командой killall pppd и ребутим сеть

sudo /etc/init.d/networking restart

после установки соединения проверяем командой
ifconfig
Если все в порядке должно быть поднято три интерфейса eth0, lo и ppp0 причем у eth0 должен быть присвоен адрес 192.168.0.1

Ну теперь остается прикрутить squid и будет вам счастье!
мануалов по нему - море. Я курил вот это http://www.unixdoc.ru/index.php?mode=2& … icle_id=91

19

Vaicartana пишет:

как и обещал...

Ай молодец.

Vaicartana пишет:

ну и напоследок. Уж не знаю почему, но у меня eth0 все время терял ip адрес. Поэтому я сделал просто: в ppp0 добавил строку

  pre-up /sbin/ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up

именно в таком виде заработало.

Тут как - раз ничего странного я ж выше написал как правильно.
Вот пример работы скрипта pppoeconf:

allow-hotplug eth1
  iface eth1 inet dhcp

auto dsl-provider
  iface dsl-provider inet ppp
    pre-up /sbin/ifconfig eth1 up # line maintained by pppoeconf
    provider dsl-provider

В твоем случае вот как должен выглядеть /etc/network/interfaces

# LWS
auto eth0
     iface eth0 inet static
     address 192.168.0.1
     netmask 255.255.255.0
     network 192.168.0.0
     broadcast 192.168.0.255
     post-up wvdial &
# The loopback network interface
auto lo
  iface lo inet loopback

# ppp0
auto ppp0
  iface ppp0 inet wvdial
     provider wvdial
     pre-up /sbin/ifconfig eth0 up
     post-down killall pppd

Так рестартует вся сеть

/etc/init.d/networking restart

Лучше отдельно интерфейсы:

 Консоль:
$ ifup ppp0
$ ifdown pp0
$ ifconfig eth0 start/stop/restart

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

20

newzenon пишет:

Тут как - раз ничего странного я ж выше написал как правильно.
...
В твоем случае вот как должен выглядеть /etc/network/interfaces

# LWS
auto eth0
     iface eth0 inet static
     address 192.168.0.1
     netmask 255.255.255.0
     network 192.168.0.0
     broadcast 192.168.0.255
     post-up wvdial &
# The loopback network interface
auto lo
  iface lo inet loopback

# ppp0
auto ppp0
  iface ppp0 inet wvdial
     provider wvdial
     pre-up /sbin/ifconfig eth0 up
     post-down killall pppd

пробовал я так, не помогает ((
а через цифирь прописывает железно.
Такие вот пирожки.