LinuxForum.Fans
Тема

Настройка локальной сети между двумя серверами через локальный порт

Автор: SerdeR 25 сообщений 8668 просмотров 🔒 закрыта
#62417

Добрый день, Уважаемые Знатоки и Искушенные Повелители Линукса:) Буду очень признателен за помощь в данном вопросе, не судите строго, я не столь умудрен опытом и знаниями в данной области. Я не являюсь системным администратором, а потому, буду признателен, за подробную инструкцию, как если бы она была предназначена для вашего сына или дочери:)

Необходимо настроить между собой два сервера, работающие под Ubuntu, для того, что бы они могли передавать информацию друг другу по локальному порту, у каждого из них своя сетевая карта, нам необходима лишь связь между ними, а точнее, в итоге, конкретный локальный IP адрес, по которому мы сможем с одного сервера передавать информацию другому. Некое подобие локальной сети на два компьютера, выход в интернет здесь не задействован и не нужен, выход в интернет совершается с другой сетевой карты, и нужен только на один из компьютеров, и он работает, а вот настроить локальное соединение по локальному порту между двумя серверами нам, к сожалению, не удалось. Буду благодарен, за подробную инструкцию, если Вам это под силу:)

Версия Linux cs207 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:05:01 UTC 2009 x86_64 GNU/Linux

*Выдержки из переписки с технической поддержкой*

->Локальные порты работают, соединение между сетевым интерфейсом и портом коммутатора активно на обоих серверах.

->Также Вы можете проверить состояние сетевых интерфейсов сервера командой ifconfig и попробовать выполнить ping до Вашего соседнего сервера. Следует учесть, что в случае, если Вы используете локальные порты, соответствующие сетевые интерфейсы должны иметь "серые" адреса, зарезервированные для использования в локальных сетях и Ваше приложение должно использовать для связи с соседним сервером именно их, а не внешние IP из выделенной Вам сети.

ifconfig
eth0 Link encap:Ethernet HWaddr 00:30:48:db:0a:a6
inet addr:188.93.18.138 Bcast:188.93.18.143 Mask:255.255.255.248
inet6 addr: fe80::230:48ff:fedb:aa6/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:49028466 errors:0 dropped:0 overruns:0 frame:0
TX packets:42294119 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:33659515140 (33.6 GB) TX bytes:16736951005 (16.7 GB)
Memory:dc100000-dc120000

eth1 Link encap:Ethernet HWaddr 00:30:48:db:0a:a7
inet addr:192.168.0.1 Bcast:192.168.255.255 Mask:255.255.0.0
inet6 addr: fe80::230:48ff:fedb:aa7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:33 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:1602 (1.6 KB)
Memory:dc200000-dc220000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:24051872 errors:0 dropped:0 overruns:0 frame:0
TX packets:24051872 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:26483819463 (26.4 GB) TX bytes:26483819463 (26.4 GB)

->Вам необходимо настроить интерфейс eth1, именно через него сервера объединены в локальную сеть, и так же настроить своё приложение на работу через него.

-> учтите что для локальной сети лучше использовать адреса из специальных, выделенных, диапазон

10.0.0.0 - 10.255.255.255 (10/8 prefix)

172.16.0.0 - 172.31.255.255 (172.16/12 prefix)

192.168.0.0 - 192.168.255.255 (192.168/16 prefix)

->Я постарался сделать всё так, как описано в статье. Я прописал следующее в файле /etc/network/interfaces:
auto eth1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.0.0
На втором сервере то же самое, но адрес, соответственно, 192.168.0.2. Перезапустил оба сервера через shutdown -r now, но это не сработало: интерфейсы включены и пинг себя (ping 192.168.0.1) проходит, а друг друга (ping 192.168.0.2) - нет. Очень-очень нужна Ваша помощь: где я ошибся, какой хотя бы общий план действий.

->Для того что бы работала локальная сеть необходим необходимо назначить один из них шлюзом.

->Мы не оказываем услуг администрирования.

#62424

SerdeR, я хочу уточнить вопрос:
1) вам нужно с одного компьютера передавать интернет на другой
2) вам нужно передавать файлы с одного на другой
3) свой переформулированный вопрос.

#62432

на сколько я понял - нужно просто передавать файлы с одного на другой ПК.
Причем один из них подключен к инету (интернет не расшарен).

Next:

eth0 - интернет. так?
тогда

открываем терминал и пишем на первом ПК
sudo ifconfig eth1 down
sudo ifconfig eth1 192.168.1.1
sudo ifconfig eth1 netmask 255.255.255.0
sudo route add default gw 192.168.1.2 eth1
sudo ifconfig eth1 up

На втором ПК:
sudo ifconfig eth1 down
sudo ifconfig eth1 192.168.1.2
sudo ifconfig eth1 netmask 255.255.255.0
sudo route add default gw 192.168.1.1 eth1
sudo ifconfig eth1 up

P.S. забыл написать sudo в строке настройки getaway smile

#62436

Насколько я понял то нужна соединить два компа через кабель без свича. Тогда нужен нуль-хабний кабель. Вот инструкция как его сделать
http://www.ixbt.com/comm/lanfaq/42.html
Сделай такой кабель. Потом как написал Иван ну придётса на компе что подключён к инету включить НАТ для раздачи нета на второй комп.

#62438
kisil написал:
Насколько я понял то нужна соединить два компа через кабель без свича. Тогда нужен нуль-хабний кабель. Вот инструкция как его сделать
http://www.ixbt.com/comm/lanfaq/42.html
Сделай такой кабель.

Первый раз слышу чтобы КРОСС (он же кроссовер) называли "нуль-хабный кабель" oO

kisil написал:
ну придётса на компе что подключён к инету включить НАТ для раздачи нета на второй комп.

Эт если нужен интернет на второй машине.
А судя из описания "проблеммы" он там не нужен wink

#62467

SerdeR,

SerdeR написал:
eth1 Link encap:Ethernet HWaddr 00:30:48:db:0a:a7
inet addr:192.168.0.1 Bcast:192.168.255.255 Mask:255.255.0.0
inet6 addr: fe80::230:48ff:fedb:aa7/64 Scope:Link

это что за фейк?

#62469

Ivan,

Ivan написал:
открываем терминал и пишем на первом ПК
sudo ifconfig eth1 down
sudo ifconfig eth1 192.168.1.1
sudo ifconfig eth1 netmask 255.255.255.0
sudo route add default gw 192.168.1.2 eth1
sudo ifconfig eth1 up

На втором ПК:
sudo ifconfig eth1 down
sudo ifconfig eth1 192.168.1.2
sudo ifconfig eth1 netmask 255.255.255.0
sudo route add default gw 192.168.1.1 eth1
sudo ifconfig eth1 up

а здесь зачем компы шлюзами друг для друга делать?

#62492
Termo написал:
Ivan, [quote=Ivan]открываем терминал и пишем на первом ПК
sudo ifconfig eth1 down
sudo ifconfig eth1 192.168.1.1
sudo ifconfig eth1 netmask 255.255.255.0
sudo route add default gw 192.168.1.2 eth1
sudo ifconfig eth1 up

На втором ПК:
sudo ifconfig eth1 down
sudo ifconfig eth1 192.168.1.2
sudo ifconfig eth1 netmask 255.255.255.0
sudo route add default gw 192.168.1.1 eth1
sudo ifconfig eth1 up

а здесь зачем компы шлюзами друг для друга делать?[/quote]
Очепятка вышла)))
В приципе сеть будет работать и без указания шлюзов, но я бы сделал так(у меня так настроено, правда инет расшарен smile ):
назначить шлюзом ПК, который подключается к инету.
тобишь так:
sudo ifconfig eth1 down
sudo ifconfig eth1 192.168.1.1
sudo ifconfig eth1 netmask 255.255.255.0
sudo ifconfig eth1 up

На втором ПК:
sudo ifconfig eth1 down
sudo ifconfig eth1 192.168.1.2
sudo ifconfig eth1 netmask 255.255.255.0
sudo route add default gw 192.168.1.1 eth1
sudo ifconfig eth1 up

P.S. Или я не прав :rolleyes: ?

#62495

ТС бы услышать. а именно его формулировку "локальный порт"..

#62528
Ivan написал:
P.S. Или я не прав

на втором компе можно и eth0

#62649

Спасибо всем за ответы. Уточняю вопрос: имеется два арендованных сервера, физического доступа к которым нет. Оба сервера подключены к интернету и доступны через PuTTY. На обоих серверах по два сетевых карты, одни из которых (eth0) смотрят в инет, вторые (eth1) - по идее соединены "локальным портом 1Gbit" (это название услуги, которую мы заказали у хостера, что конкретно там происходит - без понятия). На одном сервере расположена база данных, на другом - приложение. Задача очень простая: чтобы приложение обращалось к БД не через интернет, как сейчас (то бишь через eth0), а через тот самый пресловутый гигабитный порт (через eth1).

Я попробовал то, что предложил Ivan, но это не сработало (да ещё и убило инет и соединение по PuTTY на втором сервере, где прописывался шлюз). В результате ковыряния man я модифицировал строку добавления шлюза на втором сервере следующим образом:

sudo route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1 dev eth1

Но это тоже не сработало. Тестирую отправкой ping на адреса 192.168.1.1 и 2 соответственно с обоих серверов. Всё время друг на друга пишет Destination Host Unreachable.

Привожу uname, ifconfig и route обоих серверов:

Сервер 1:

uname -a
Linux cs207 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:05:01 UTC 2009 x86_64 GNU/Linux

ifconfig eth1
eth1 Link encap:Ethernet HWaddr 00:30:48:db:0a:a7
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::230:48ff:fedb:aa7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:720 (720.0 B)
Memory:dc200000-dc220000

route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
188.93.18.136 * 255.255.255.248 U 0 0 0 eth0
192.168.1.0 * 255.255.255.0 U 0 0 0 eth1
default 188.93.18.137 0.0.0.0 UG 100 0 0 eth0

Сервер 2:

uname -a
Linux cs1021 2.6.31-22-generic #60-Ubuntu SMP Thu May 27 02:41:03 UTC 2010 x86_64 GNU/Linux

ifconfig eth1
eth1 Link encap:Ethernet HWaddr 00:30:48:cf:49:c9
inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::230:48ff:fecf:49c9/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:42 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:2412 (2.4 KB)
Memory:fbde0000-fbe00000

route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
localnet * 255.255.255.248 U 0 0 0 eth0
192.168.1.0 192.168.1.1 255.255.255.0 UG 0 0 0 eth1
192.168.1.0 * 255.255.255.0 U 0 0 0 eth1
default 188.93.18.137 0.0.0.0 UG 100 0 0 eth0

Версии Убунты на серверах немного отличаются, видимо, с этим связаны различия в строках 188.93.18.136/localnet.

#62652
SerdeR написал:
видимо, с этим связаны различия в строках 188.93.18.136/localnet.

а вы у правайдера/хостера можете спросить простую вещь -

"как поднять локальную сеть между двумя арендованными у вас серверами"

они не предоставляют этой информации?

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

#62653
SerdeR написал:
eth1 Link encap:Ethernet HWaddr 00:30:48:db:0a:a7
inet addr:192.168.0.1 Bcast:192.168.255.255 Mask:255.255.0.0
SerdeR написал:
sudo route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1 dev eth1

это две цитаты из первого и последнего вашего сообщения.
посмотрите внимательно, где в них различия.

#62654

Termo, зачем человеку вообще создавать шлюз если он в одном Vlan'е например? а он даже не знает, в одном или нет.

#62655

честно?
я не знаю.
информации мало...

#62662

Разумеется, мы пытались задавать вопросы хостеру, несколько раз, но они неизменно отвечают нам следующее:
"Мы не оказываем услуг администрирования."

Termo, разумеется, в них будут различия, я ведь написал, что делал то, что предложил Ivan.
system-root, создавать шлюз нужно потому, что без него ничего не работает. А также потому что именно так сказали нам в той самой техподдержке: "Для того что бы работала локальная сеть необходим необходимо назначить один из них шлюзом." Как раз перед тем, как в следующем сообщении ответить нам вышеприведённым отказом.

эту часть мы опустим как не относящуюся к делу.

#62666

давайте так.
смотрите:

SerdeR написал:
->Я постарался сделать всё так, как описано в статье. Я прописал следующее в файле /etc/network/interfaces:
auto eth1
iface eth1 inet static
        address 192.168.0.1
        netmask 255.255.0255.0
На втором сервере то же самое, но адрес, соответственно, 192.168.0.2. Перезапустил оба сервера через shutdown -r now, но это не сработало: интерфейсы включены и пинг себя (ping 192.168.0.1) проходит, а друг друга (ping 192.168.0.2) - нет.

о чём это говорит? о том, что локальную сеть вам создать не удалось.
почему?
потому, что оба сервера со своими eth1 интерфейсами не могут соединятся между собой не используя шлюз провайдера на котором неизвестно что.
другими словами -
1) допустим у вас Vlan'ы, тогда нужно, чтоб провайдер на портах свитча (или как он там строит сеть) создал правило и завсёл оба порта в один и тот же влан, тогда всё будет работать.
2) допустим вы вообще в разных свитчах и вам нужен шлюз т.к. у вас разные подсети. просим провайдера сделать нам НАТперенат
3) [...] ещё мильён условий.
зачем вам посоветовали поднять шлюз я так и не понял...

#62671

я вам привел две ваши цитаты, чтобы ВНИМАТЕЛЬНО посмотрели и нашли различия, но вы не захотели этого делать.
ваше право. спорить не буду.

выбираете любой компьютер и пишете в нем следующие:
sudo ifconfig eth1 down
sudo ifconfig eth1 192.168.0.1 netmask 255.255.0.0
sudo route add default gw 192.168.0.1 eth1
## или одной строкой:
route add -net 192.168.0.1 netmask 255.255.0.0 gw 192.168.0.1 dev eth1
## далее:
sudo ifconfig eth1 up


на другом компьютере:
sudo ifconfig eth1 down
sudo ifconfig eth1 192.168.0.2 netmask 255.255.0.0
sudo route add default gw 192.168.0.1 eth1
## или одной строкой:
route add -net 192.168.0.2 netmask 255.255.0.0 gw 192.168.0.1 dev eth1
## далее:
sudo ifconfig eth1 up

если не заработало, то:
sudo /etc/init.d/networking restart

#62672

system-root, я так понял, что эти две машины просто соединены между собой витой парой, не?

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