LinuxForum.Fans
Тема

[Решено] PPPoE и FTP через одну сетевую карту

Автор: aidan_megabyte 15 сообщений 3910 просмотров
#30548

Возникла небольшая проблема... Уже несколько дней как поставил Ubuntu 9.10, настроил Инет. Но есть одно "но": существует внутренний FTP-файлообменник. Под виндой проблем не было: для Инета создавалось отдельное подключение, а доступ к FTP шел через локалку. В Ubuntu же мне приходится отключать Инет, чтобы попасть на FTP, и наоборот. Скажите, эта проблема решаема?..

#30569

aidan_megabyte,
Не понял, можно поподробнее? У Вас два апишника что ли получается? Один внутренний, другой - внешний?

#30573

Судя по всему, да: в винде в свойствах локального соединения стоят автоматические параметры (их присваивает провайдер). Для доступа в Инет я создавал отдельное PPPoE-соединение, где вбивал логин и пароль. В любом случае, мне не приходилось "глушить" одно ради доступа к другому.

#30574

aidan_megabyte, вам нужен ifconfig alias и etc network interfaces allow hotplug

#30578

Не могли бы вы поподробнее объяснить, что именно я должен сделать? :) Как я понял, нужно добавить строку "allow hotplug" в файл /etc/network/interfaces. А вот с алиасингом не сталкивался... Все, что я сейчас про него читал, касалось статической IP-адресации. У меня же все адреса, маски etc выставляются автоматом, динамически. Подскажите, please!..

#30598
aidan_megabyte написал:
Судя по всему, да: в винде в свойствах локального соединения стоят автоматические параметры (их присваивает провайдер). Для доступа в Инет я создавал отдельное PPPoE-соединение, где вбивал логин и пароль. В любом случае, мне не приходилось "глушить" одно ради доступа к другому.

А в убунту разве не аналогично?

У меня и pppoe и ftp работают на одной сетевой карте. FTP-сервер доступен как локально, так и внешне с этой карты. + он доступен по второму подключению для ноута (вторая сетевая карта -> свитч -> ноут). У меня всё включается автоматически (при загрузке), поделюсь настройками, может поможет:

text
cat /etc/network/interfaces

auto lo iface lo inet loopback

auto eth1 iface eth1 inet static address 192.168.0.1 netmask 255.255.255.0

auto eth2 iface eth2 inet dhcp pre-up iptables-restore < /etc/iptables.up.rules up route add -net 0.0.0.0 netmask 255.255.255.255 dev eth2

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

Вот route:

text
Destination Gateway Genmask Flags Metric Ref Use Iface
default         *               255.255.255.255 UH    0      0        0 eth2
as.glazov-homen *               255.255.255.255 UH    0      0        0 ppp0
192.168.0.0     *               255.255.255.0   U     0      0        0 eth1
10.16.0.0       *               255.255.0.0     U     0      0        0 eth2
205.188.0.0     10.16.0.1       255.255.0.0     UG    0      0        0 eth2
link-local      *               255.255.0.0     U     1000   0        0 eth1
64.12.0.0       10.16.0.1       255.255.0.0     UG    0      0        0 eth2
192.168.0.0     10.16.0.1       255.255.0.0     UG    0      0        0 eth2
10.0.0.0        10.16.0.1       255.0.0.0       UG    0      0        0 eth2
default         *               0.0.0.0         U     0      0        0 ppp0

Теперь работоспособность ftp по внутреннему (eth2) и внешнему (pppoe) соединению:

text
sid@luckystar:~$ ftp 10.16.6.15
Connected to 10.16.6.15.
220 Welcome to LuckyStar FTP service.
Name (10.16.6.15:sid): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> bye
221 Goodbye.

sid@luckystar:~$ ftp 91.215.xx.xx Connected to 91.215.xx.xx. 220 Welcome to LuckyStar FTP service. Name (91.215.17.143:sid): anonymous 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> bye 221 Goodbye.

#30606

А не проще ли маршрутизацию настроить? Например через route add...?

#30618

Помоему проще.
При подключении PPPoE меняется шлюз и локальный DNS. Отсюда и проблема, что интернет работает, а локалка -- нет.
Вытаскивайте свой route, /etc/resolv.conf и ip адрес FTP сервера без подключённого PPPoE. Затем route и /etc/resolv.conf с подключённым PPPoE, если не разберёшься сам. :)

#30655

Вот route с включенным PPPoE:

text

megabyte@megabyte-linux:~$ route
Таблица маршутизации ядра протокола IP
Destination Gateway Genmask Flags Metric Ref Use Iface
172.31.2.1      *               255.255.255.255 UH    0        0        0 ppp0
link-local         *               255.255.0.0       U     1000    0        0 ppp0
default         172.31.2.1     0.0.0.0             UG    0        0        0  ppp0

Вот /etc/resolv.conf с включенным PPPoE:

text

megabyte@megabyte-linux:~$ cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 91.192.60.2
nameserver 91.192.60.3

А вот route с выключенным PPPoE:

text

megabyte@megabyte-linux:~$ route
Таблица маршутизации ядра протокола IP
Destination Gateway Genmask Flags Metric Ref Use Iface
10.23.0.0       *               255.255.0.0     U     1      0        0 eth0
link-local      *               255.255.0.0     U     1000   0        0 eth0
default         10.23.0.254     0.0.0.0         UG    0      0        0 eth0

Вот /etc/resolv.conf с выключенным PPPoE:

text

megabyte@megabyte-linux:~$ cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 91.192.60.2
nameserver 91.192.60.3

Вот IP-адрес FTP-сервера:

text

megabyte@megabyte-linux:~$ ping ftp.lks-tv.ru
PING ftp.lks-tv.ru (172.18.0.4) 56(84) bytes of data.
64 bytes from 172.18.0.4: icmp_seq=1 ttl=62 time=0.280 ms
64 bytes from 172.18.0.4: icmp_seq=2 ttl=62 time=0.300 ms
64 bytes from 172.18.0.4: icmp_seq=3 ttl=62 time=0.230 ms
64 bytes from 172.18.0.4: icmp_seq=4 ttl=62 time=0.231 ms
64 bytes from 172.18.0.4: icmp_seq=5 ttl=62 time=0.246 ms
64 bytes from 172.18.0.4: icmp_seq=6 ttl=62 time=0.252 ms
64 bytes from 172.18.0.4: icmp_seq=7 ttl=62 time=0.224 ms
64 bytes from 172.18.0.4: icmp_seq=8 ttl=62 time=0.239 ms
64 bytes from 172.18.0.4: icmp_seq=9 ttl=62 time=0.235 ms

--- ftp.lks-tv.ru ping statistics --- 9 packets transmitted, 9 received, 0% packet loss, time 40031ms rtt min/avg/max/mdev = 0.224/0.248/0.300/0.029 ms

Соединение с Интернетом настроено через NetworkManager, в разделе DSL-соединений.

text

megabyte@megabyte-linux:~$ cat /etc/network/interfaces
auto lo
iface lo inet loopback
#30691

aidan_megabyte, маршрутизацию настроить надо

#30703

vint, может, подскажете, что и где править надо? Я пока слабо знаком с работой сети в Linux, к сожалению...

Может, вопрос глупый, но все же... Реально ли сделать так, чтобы одновременно были включены и eth0, и Интернет-соединение? Так как при включении Инета eth0 отключается, и наоборот. Напомню: Инет настраивал через NetworkManager, добавлял новое DSL-соединение.

#30713

route add -host 91.192.60.2 gw шлюз eth0
route add -host 91.192.60.3 gw шлюз eth0
route add default dev eth0
route add -net 172.18.0.0/32 eth0

Шлюз пишешь свой, который тебе говорит iptables с выключенным ppp0.
Точно не уверен, но как-то так.
Думаю если нагородил не правильно, меня поправят.

#30717

vint, а если попробовать так: Инет настроить через pppoeconf, а в /etc/network/interfaces вбить следующее:

text

auto lo
iface lo inet loopback

auto eth0 iface eth0 inet dhcp

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

Как думаете?

P.S. Ubuntu стоит дома, а я сейчас на работе.

#30749

Кстати как вариант. Только сейчас заметил, что при включенном ppp0 у тебя eth0 опущен. Но здаётся мне, маршруты всеравно писать придётся.

#30751

Я таки это сделал! :) Надо было и interfaces править, и маршрут добавлять. Но начал я с жестокого убийства NetworkManager'а. :) Затем через Synaptic удалил pppoe, оставив только pppoeconf - после установки pppoe в логах стал мелькать некто ppp1. Настроил Инет через pppoeconf. А затем подправил /etc/network/interfaces:

text

megabyte@megabyte:~$ cat /etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0 iface eth0 inet dhcp

up route add -net 172.18.0.0/16 gw 10.23.0.254 dev eth0

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

Перезагрузка.

Теперь итоги операции:
1) проверка работы сетевых интерфейсов:

text

megabyte@megabyte:~$ ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:22:b0:53:62:2a  
          inet addr:10.23.2.65  Bcast:10.23.255.255  Mask:255.255.0.0
          inet6 addr: fe80::222:b0ff:fe53:622a/64 Диапазон:Ссылка
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2904 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1346 errors:0 dropped:0 overruns:0 carrier:0
          коллизии:0 txqueuelen:1000 
          RX bytes:1550658 (1.5 MB)  TX bytes:245606 (245.6 KB)
          Прервано:21 Base address:0x2c00 

lo Link encap:Локальная петля (Loopback) inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Диапазон:Узел UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 коллизии:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

ppp0 Link encap:Протокол PPP (Point-to-Point Protocol) inet addr:213.109.11.240 P-t-P:172.31.1.1 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1 RX packets:1221 errors:0 dropped:0 overruns:0 frame:0 TX packets:1152 errors:0 dropped:0 overruns:0 carrier:0 коллизии:0 txqueuelen:3 RX bytes:988842 (988.8 KB) TX bytes:206850 (206.8 KB)

2) проверка доступа к FTP-серверу:

text

megabyte@megabyte:~$ ftp ftp.lks-tv.ru
Connected to ftp.lks-tv.ru.
220 Welcome to LKS FTP service.
Name (ftp.lks-tv.ru:megabyte): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> exit
221 Goodbye.

3) проверка доступа в Интернет:

text

megabyte@megabyte:~$ ping www.google.com
PING www-tmmdi.l.google.com (66.102.9.105) 56(84) bytes of data.
64 bytes from lm-in-f105.1e100.net (66.102.9.105): icmp_seq=1 ttl=52 time=78.0 ms
64 bytes from lm-in-f105.1e100.net (66.102.9.105): icmp_seq=2 ttl=52 time=78.0 ms
64 bytes from lm-in-f105.1e100.net (66.102.9.105): icmp_seq=3 ttl=52 time=90.4 ms
64 bytes from lm-in-f105.1e100.net (66.102.9.105): icmp_seq=4 ttl=52 time=78.1 ms
64 bytes from lm-in-f105.1e100.net (66.102.9.105): icmp_seq=5 ttl=52 time=78.2 ms
64 bytes from lm-in-f105.1e100.net (66.102.9.105): icmp_seq=6 ttl=52 time=78.0 ms
64 bytes from lm-in-f105.1e100.net (66.102.9.105): icmp_seq=7 ttl=52 time=78.0 ms
64 bytes from lm-in-f105.1e100.net (66.102.9.105): icmp_seq=8 ttl=52 time=78.0 ms
64 bytes from lm-in-f105.1e100.net (66.102.9.105): icmp_seq=9 ttl=52 time=77.9 ms
...........

В общем, получилось. :) Спасибо всем за советы! :)

Войдите или зарегистрируйтесь, чтобы ответить.