Custler

Скрипт полностью автоматического создания роутера для корбины на FreeBSD (Custler).

Рекомендованные сообщения

Спасибо за скрипт!

 

Хотелось бы еще научиться канал шейпить. Вот только любая попытка поправок pf.conf заканчивается отключением интернета :D

Хотя пинг с роутера проходит.

Может надо как-то по другому шейпить?

ext_if="rl0"
int_if="rl1"
vpn_if="ng0"			# vpn interface always ng0 - NetGraph interface
mcast_ll="224.0.0.0/24"
mcast_as="233.32.240.0/24"
mcast_ssm="239.255.255.0/24"

server="192.168.0.2" 
wifi="192.168.0.1"
kapturs="192.168.0.14"

altq on $vpn_if cbq bandwidth 8000Kb queue \
{ qserver, qwifi, qkapturs }
queue qserver bandwidth 25% priority 2 cbq ( borrow ) #Server
queue qwifi bandwidth 25% priority 2 cbq ( borrow ) #wifi
queue qkapturs bandwidth 41% priority 3 cbq ( default borrow )
queue qdns bandwidth 2% priority 5 cbq ( borrow )
queue qntp bandwidth 2% priority 7 cbq ( borrow )
queue qack bandwidth 5% priority 6 cbq ( borrow )


# ftp="21"			# порты FTP сервера должны быть указаны в файле router.config после адреса сервера
# ftp-data="20"
ftp_proxy="127.0.0.1"   	# ftp proxy IP
ftp_proxyport="8021"		# ftp proxy port
#=======================================

set optimization aggressive

## отбрасывать пакеты будем тихо, чтобы никто не догадался.. ))
set block-policy drop

# He фильтруем пакеты на кольцевом интерфейсе
set skip on lo0

## нормализуем входящий трафик
scrub in all fragment reassemble

## нормализуем исходящий трафик
## max-mss необходим из-за низкого mtu на внешнем канале
scrub out all random-id max-mss 1460

#============================================================================
# Translation: specify how addresses are to be mapped or redirected.
# nat: packets going out through  with source address  will
# get translated as coming from the address of , a state is created for
# such packets, and incoming packets will be redirected to the internal address.
#============================================================================
nat on $ext_if proto { tcp udp icmp } from $int_if:network to any -> ($ext_if) 
nat on $vpn_if proto { tcp udp icmp } from $int_if:network to any -> ($vpn_if)

nat-anchor "ftp-proxy/*"
rdr-anchor "ftp-proxy/*"

#=============Redirect Section===============================================
## Redirect for FTP Proxy
rdr pass on $int_if proto tcp from any to any port ftp -> $ftp_proxy port $ftp_proxyport

## Redirect for home servers
rdr pass on {$ext_if $vpn_if} proto {tcp udp} from any to any port { 20 21 3389 24990 80 8080} -> 192.168.0.2

#=============Pass Section=============================================== 
## Pass multicast traffic
pass quick on { $int_if $ext_if } proto { igmp udp } to { $mcast_ll $mcast_as $mcast_ssm } allow-opts modulate state

## pass in for FTP Server
pass in quick on {$ext_if $vpn_if} proto tcp from any to any port 21 flags S/SA synproxy state
anchor "ftp-proxy/*"

## =========================

## запрещаем соединение с нашим ssh сервером из внешнего мира
block in quick on {$ext_if $vpn_if} proto tcp from any to any port ssh

## чтобы запретить пинговать наш роутер раскомментируйте:
# block in quick on {$ext_if $vpn_if} proto icmp from any to (self)

## разрешить весь выход
pass out all keep state

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
вот схемку набросал.

 

Схемка - полный пипец :D:blink::):rtfm:

 

Корбина должна быть включена в сервак (он же - роутер), в интерфейс который получает IP по DHCP и только!

Свич должен быть включен в сервак, в интерфейс 192.168.1.1.

Все остальные девайсы должны подключаться к свичу.

То бишь: Корбина -> Сервак -> свич -> все домашние девайсы с адресами 192.168.1.xxx

 

KOpa85

 

Сорри, но с шейпингом я не помогу.

Сам не делал, а фантазировать не хочу.

Посмотри внимательней ман, там вроде бы еще и block и pass out правила должны быть..

Изменено пользователем Custler

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Custler ты мне предлагаешь сделать, прям как настоящие русские люди, сначала делать, а потом думать, это я к тому, что это временная схема, естественно когда я уже настрою сервак то он будет стоять по нормальной схеме (так как описал ты), а пока перетыкать кабели туда сюда я не намерен.

Подсказал бы лучше, если знаешь в чём может быть причина

Изменено пользователем Abadd0N

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
сначала делать, а потом думать

Именно так ты и поступил :-)

Подсказал бы лучше, если знаешь в чём может быть причина

Уже ответили. Причина в схеме подключения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Уже ответили. Причина в схеме подключения.

в схеме подключения никаких проблем нет, я тестировал и так: корбина - сервак - ноут, то есть напрямую.

Именно так ты и поступил :-)

не не сите ахинею...

Изменено пользователем Abadd0N

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Уже ответили. Причина в схеме подключения.

в схеме подключения никаких проблем нет, я тестировал и так: корбина - сервак - ноут, то есть напрямую.

 

1. У тебя к локальной сети корбины (к одному порту домового свича корбины) подключается два девайса одновременно, каждый из которых просит у неё адрес по DHCP.

Как при этом поступает корбина - х.з., не проверял. DHCP сервер корбины привязывает выданный локальный ip (10.х.х.х) к маку спросившего девайса и помнит это примерно две недели.

 

2. Определись пожалуйста с задачей которую ты хочешь решить:

- разобраться как и почему работает или не работает твоя временная схема;

- настроить домашнюю сеть через роутер.

В обоих случаях нужна информация обо всех айпишниках всех девайсов и все таблицы маршрутизации. Иначе - гадание.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Добрый день.

За неделю задротства над собственным сервером накопилось несколько вопросов.

1) сделал все как было указано в посте Полный роутер для корбины на FreeBSD для Чайников... + чтобы сервер не зависал прописал статические маршруты. Почти получилось. Получаю внешний IP, но ни один хост в нете не пингуется. traceroute запинается внутри сети корбины (айпишники 10.xxx.xxx.xxx)

2)Попробовал запустить скрипт из текущего поста, но возникла проблема: у меня freeBSD 7.1 ! скрипт выдает ошибку, говоря, что он создан только для версий 6.3 и 7.0. Есть варианты, как это можно исправить?

3)Когда все наконец таки заработает, я на это очень надеюсь, компы которые будут подключены к серверу, будут получать IP, GW, DNS по DHCP или придется на каждом все ручками писать? Если по DHCP, тогда как можно указать для конкретного компа конкретный IP адрес?

 

Вот содержимое файла rc.conf:

gateway_enable="YES"
keymap="ru.koi8-r"
inetd_enable="YES"
sshd_enable="YES"
usbd_enable="NO"

static_routes="localnet dns1 dns2 vpnpptp01 vpnl2tp01"
route_localnet="-net 10.0.0.0 -netmask 255.0.0.0 10.180.40.1"
route_dns1="213.234.192.8 10.180.40.1"
route_dns2="85.21.192.3 10.180.40.1"
route_vpnpptp01="vpn.corbina.net 10.180.40.1"
route_vpnl2tp01="tp.corbina.net 10.180.40.1"

ntpd_enable="YES"					# ........ ............. .......

pf_enable="YES"						 # ........ PF (......... ...... .... ..........)
pf_rules="/etc/pf.conf"			  # ........... ...... ... pf
pf_flags=""								   # .............. ..... ... ....... pfctl
pflog_enable="NO"					# ......... pflogd(8)
pflog_logfile="/var/log/pflog"  # ... pflogd ...... ......... ........
pflog_flags=""							 # .............. ..... ... ....... pflogd

igmpproxy_enable="YES"		  # ........ ....... igmp ... IPTV# -- sysinstall generated deltas -- # Fri May  1 16:26:55 2009
## ==== Russification to CP1251 ====
# mouse
# mousechar_start="3"
# moused_enable="YES"
# moused_flags="-r high"
## Screen
font8x8="cp1251-8x8"
font8x14="cp1251-8x14"
font8x16="cp1251-8x16"
# Keyboard
keyrate="fast"
keymap="ru.cp1251.win"		  # ......... Windows . ............ ...... .. Ctrl+Shift
# -- sysinstall generated deltas -- # Fri May  1 17:44:04 2009
ifconfig_msk0="inet 192.168.1.1  netmask 255.255.255.0"
ifconfig_rl0="DHCP"
hostname="exile.localhost"

 

Какие ещё файлы необходимо показать?

Изменено пользователем tergukasov

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2 Custler

Огромное спасибо за скрипт .. но вот возникла трабла следующего плана .. при запуске скрипта ./SetUp_Router.sh

пишет следущее

Found static interface: rl1

Found static interface: rl1

 

ERROR Must be exactly ONE STATIC interface.Don't know how to process it.

Check network configuration in /etc/rc.conf or run sysinstall to configure network interfaces

 

тобишь запись о статическом интерфесе rl1 дублируется и ругается на то, что должен быть один статический интерфейс .. хотя он и есть один ....

 

делал все по пунктам. Дистриб 7.0

 

#ifconfig

rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500

options=8<VLAN_MTU>

ether 3904809849

inet 10.42.252.159 netmask 0xffff0000 broadcast 10.42.255.255

media: Ethernet autoselect (100baseTX <full-duplex>)

status: active

 

rl1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500

options=8<VLAN_MTU>

ether 39048df9849

inet 192.168.1.1 netmask 0xffff0000 broadcast 192.168.1.255

media: Ethernet autoselect (none)

status: no carrier

 

есть подозрение, что косяк в том, что по локальному интерфейсу rl1 подключен комп напрямую ... и лампочка не сетевухе на этом интерфесе не горит ... Попробую воткнуть 2ой конец не напрямую в комп,а в свитч ... но его нудо еще купить ...

может ли косяк быть в этом? =)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Огромное спасибо за скрипт Custler.

 

 

есть подозрение, что косяк в том, что по локальному интерфейсу rl1 подключен комп напрямую ... и лампочка не сетевухе на этом интерфесе не горит ... Попробую воткнуть 2ой конец не напрямую в комп,а в свитч ... но его нудо еще купить ...

может ли косяк быть в этом? =)

 

Как у тебя подключен второй комп если по ifconfig видно что всё отключено, если ты подключал обычным патч-кордом то ты не прав нужен перевертыш.

А вот касяк у тебя скорее всего в настройках покажи /etc/rc.conf

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Та же проблема что и у vinaction.

Msk0,Msk1 Встроенные, не отключаемые! (нужны оба! (Один для моего PC, Другой для сетевой точки))

3й внешний

Нечего не помогает Скрипт явно недружелюбный.

Ps У моего PC нет разъема для Флоппи.

 

Pss Warcan у

 

/etc/rc.conf Команда чего та там одним словом она не работает

Psss 7.0 при инициализации вис намертво, 7.1 встал как по маслу.

Лампочки горят, всё подключено как надо.

Изменено пользователем BioGen

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
/etc/rc.conf Команда чего та там одним словом она не работает

2 BioGen

Это не команда а файл который я хотел увидеть :)

Команда вот

cat /etc/rc.conf

ну и выполни вот эту команду

ifconfig

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Руки как антенны прямые и упругие! <_<

# cat /ets/rs.conf
gateway_enable="YES"
keymap="ru.koi8-r"
sshd_enable="YES"
## ==== Russification to CP1251 ====
# mouse
# mousechar_start="3"
# moused_enable="YES"
# moused_flags="-r high"
## Keyboard
keyrate="fast"
keymap="ru.cp1251.win"

# ifconfig
msk0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
       options=11a<TXCSUM,VLAN_MTU,VLAN_HWTAGGING,TSO4>
       ether 00:21:85:14:72:f6
       media: Ethernet autoselect (100baseTX <full-duplex>)
       status: active
msk1: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
       options=11a<TXCSUM,VLAN_MTU,VLAN_HWTAGGING,TSO4>
       ether 00:21:85:14:72:f7
       media: Ethernet autoselect (none)
       status: no carrier
sk0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
       options=b<RXCSUM,TXCSUM,VLAN_MTU>
       ether 00:0c:46:ce:0e:77
       inet 10.195.4.126 netmask 0xfffff800 broadcast 10.195.7.255
       media: Ethernet autoselect (100baseTX <full-duplex>)
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
       inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4
       inet6 ::1 prefixlen 128
       inet 127.0.0.1 netmask 0xff000000

sk0  IPv6-Нет,DHCP-Да,Host-Пусто,Domain-Пусто,IPv4 Gateway-КТ,Name server-КТ,IPv4 Address-КТ,Netmask-КТ,Extra option to ifconfig-Пусто,OK-Нет->CANCEL

msk0 IPv6-Нет,DHCP-Нет,Host-Пусто,Domain-Пусто,IPv4 Gateway-Пусто,Name server-Пусто,IPv4 Address-192.168.1.1,Netmask-255.255.255.0,Extra option to ifconfig-Пусто,OK-Нет->CANCEL

msk1 IPv6-Нет,DHCP-Нет,Host-Пусто,Domain-Пусто,IPv4 Gateway-Пусто,Name server-Пусто,IPv4 Address-192.168.2.1,Netmask-255.255.255.0,Extra option to ifconfig-Пусто,OK-Нет->CANCEL

# mount_msdosfs /dev/da0s1 /mnt
# cp -r /mnt/* /usr/
# cd /usr/Custler
# ./Russification.sh
Russification successful, but need REBOOT!
To REBOOT now press any key, or Ctrl+C to cancel.
^C
# cancel Нет
# Exit   Нет
Alt+Ctrl+Delet Да
# ./SetUp_Router.sh
#### ERROR: Must be exactly ONE STATIC interface. Dont know how to process it. Sorry
Check network configuration in /etc/rc.conf or run sysinstall to configure network interfaces.

Warcan :) Ну спасибо я только вчера нарыл как монтировать флешку а позавчера скачал этот дистриб.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Добрый день.

За неделю задротства над собственным сервером накопилось несколько вопросов.

1) сделал все как было указано в посте Полный роутер для корбины на FreeBSD для Чайников... + чтобы сервер не зависал прописал статические маршруты. Почти получилось. Получаю внешний IP, но ни один хост в нете не пингуется. traceroute запинается внутри сети корбины (айпишники 10.xxx.xxx.xxx)

Наверное рано ещё пинговать. Инет будет пинговаться после подъёма ВПН. Для начала должен пинговаться ftp.corbina.net, если правильно прописаны gw, dns и маршруты.

 

2)Попробовал запустить скрипт из текущего поста, но возникла проблема: у меня freeBSD 7.1 ! скрипт выдает ошибку, говоря, что он создан только для версий 6.3 и 7.0. Есть варианты, как это можно исправить?

Я сделал эту заглушку, потому как не проверял на других версиях. Пока так и не нашел времени поставить себе 7.1, а тут уже 7.2 на подходе...

Исправить можно отредактировав в редакторе ee файл 1-GetPackages.sh вствив после case "$ReleaseLevel" in (73-я строка) следующий код:

	7.1-RELEASE) 
echo "Your FreeBSD release is " $ReleaseLevel
PKGRELDIR='packages-7.1-release'
;;

или просто исправив 0 на 1 в имеющемся.

 

3)Когда все наконец таки заработает, я на это очень надеюсь, компы которые будут подключены к серверу, будут получать IP, GW, DNS по DHCP или придется на каждом все ручками писать? Если по DHCP, тогда как можно указать для конкретного компа конкретный IP адрес?

DHCP я не запускал, так как компы у меня не меняются каждый день и каждому надо привязывать порты к айпишнику. Тут dhcp не нужен и даже вреден. Хотя конечно можно по макам раздавать каждому своё, но заморачиваться не хочется.

 

Вот содержимое файла rc.conf:

static_routes="localnet dns1 dns2 vpnpptp01 vpnl2tp01"
route_localnet="-net 10.0.0.0 -netmask 255.0.0.0 10.180.40.1"
route_dns1="213.234.192.8 10.180.40.1"
route_dns2="85.21.192.3 10.180.40.1"

route_vpnpptp01="vpn.corbina.net 10.180.40.1"
route_vpnl2tp01="tp.corbina.net 10.180.40.1"

В роутах НЕЛЬЗЯ писать днс имена!

И вообще, то, что ты тут хочешь описать статикой, должно выдаваться DHCP корбины, если не выдаёт, то скорее всего у тебя неправильно сконфигурирован dhcp клиент и ты не получаешь много чего ещё кроме этих маршрутов.

 

 

2 Custler

Огромное спасибо за скрипт .. но вот возникла трабла следующего плана .. при запуске скрипта ./SetUp_Router.sh

пишет следущее

Found static interface: rl1

Found static interface: rl1

 

ERROR Must be exactly ONE STATIC interface.Don't know how to process it.

Check network configuration in /etc/rc.conf or run sysinstall to configure network interfaces

 

тобишь запись о статическом интерфесе rl1 дублируется и ругается на то, что должен быть один статический интерфейс .. хотя он и есть один ....

 

делал все по пунктам. Дистриб 7.0

Ни скрипт ни я не обладаем телепатическими способностями, к сожалению. :D

Поэтому он определяет интерфейс, подключенный к корбине по признаку DHCP, а интерфейс домашней локалке по тому, что он статический.

То есть в момент запуска скрипта должно быть именно два интерфейса: один - DHCP, а другой - со статическим айпи.

Если кто может предложить другие критерии - welcome.

 

есть подозрение, что косяк в том, что по локальному интерфейсу rl1 подключен комп напрямую ... и лампочка не сетевухе на этом интерфесе не горит ... Попробую воткнуть 2ой конец не напрямую в комп,а в свитч ... но его нудо еще купить ...

может ли косяк быть в этом? =)

Обычный патч-корд предназначен для подключения к свичу. Два компа напрямую можно соединить только специально разделанным кабелем - кроссом - http://www.ixbt.com/comm/lanfaq/42.html

 

 

Руки как антенны прямые и упругие! :)

У тебя в rc.conf не сконфигурировано ни одного интерфейса, а скрипт на первом этапе читает именно его.

Добавь в него строчки

ifconfig_msk0="inet 192.168.1.1 netmask 255.255.255.0" # Home localnet

ifconfig_sk0="DHCP" # Corbina

 

А третий пока оставь несконфигурированным, чтобы скрипт не путать.

Перезагрузись и запускай скрипт.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 Custler

Огромное спасибо за скрипт .. но вот возникла трабла следующего плана .. при запуске скрипта ./SetUp_Router.sh

пишет следущее

Found static interface: rl1

Found static interface: rl1

 

ERROR Must be exactly ONE STATIC interface.Don't know how to process it.

Check network configuration in /etc/rc.conf or run sysinstall to configure network interfaces

 

тобишь запись о статическом интерфесе rl1 дублируется и ругается на то, что должен быть один статический интерфейс .. хотя он и есть один ....

 

делал все по пунктам. Дистриб 7.0

Ни скрипт ни я не обладаем телепатическими способностями, к сожалению. :rolleyes:

Поэтому он определяет интерфейс, подключенный к корбине по признаку DHCP, а интерфейс домашней локалке по тому, что он статический.

То есть в момент запуска скрипта должно быть именно два интерфейса: один - DHCP, а другой - со статическим айпи.

Если кто может предложить другие критерии - welcome.

вот мой rc.conf

cat rc.conf

gateway_enable yes

hostname="googlanet.corbina.net"

ifconfig_rl1='inet 192.168.1.1 netmask 255.255.255.0'

keymap='ru.koi8-r'

linux_enable='YES'

sshd_enable='yes'

# --sysinstall generated deltas

ifconfig_rl0="DHCP"

ifconfig_rl1="inet 192.168.1.1 netmask 255.255.255.0"

hostname="googlanet.corbina.net"

 

Обычный патч-корд предназначен для подключения к свичу. Два компа напрямую можно соединить только специально разделанным кабелем - кроссом - http://www.ixbt.com/comm/lanfaq/42.html

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

Очень признателен за любую помощь.. )

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
вот мой rc.conf

cat rc.conf

gateway_enable yes

hostname="googlanet.corbina.net"

ifconfig_rl1='inet 192.168.1.1 netmask 255.255.255.0'

keymap='ru.koi8-r'

linux_enable='YES'

sshd_enable='yes'

# --sysinstall generated deltas

ifconfig_rl0="DHCP"

ifconfig_rl1="inet 192.168.1.1 netmask 255.255.255.0"

hostname="googlanet.corbina.net"

 

Обычный патч-корд предназначен для подключения к свичу. Два компа напрямую можно соединить только специально разделанным кабелем - кроссом - http://www.ixbt.com/comm/lanfaq/42.html

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

Очень признателен за любую помощь.. )

1. Удали лишние строки, выделенную красным (редактором ee - "ee /etc/rc.conf"). Скрипт просто насчитал три интерфейса и выругался. А hostname тоже незачем повторять.

2. Убедись, что rl0 подключен непосредственно к корбине, а rl1 - к внутренней сети.

3. Запускай скрипт - должен работать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1. Удали лишние строки, выделенную красным (редактором ee - "ee /etc/rc.conf"). Скрипт просто насчитал три интерфейса и выругался. А hostname тоже незачем повторять.

2. Убедись, что rl0 подключен непосредственно к корбине, а rl1 - к внутренней сети.

3. Запускай скрипт - должен работать.

;) очень сожалею за эту ламерскую ошибку ... просто глупо ... <_<

Custler Спасибо за этот замечательный скрипт и за оперативную и, главное, терпеливую помощь! :D

Изменено пользователем vinaction

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

хмм поторопился я расслабляться ..

тут вот такая ошибка вылетает с mpd

когда начинает отрабатывать 3ий скрипт ... я выбираю protocol type pptp

пишу логин и пароль от ВПН подключения

to check before overwrite see /usr/Custelr/mpd4/mpd.links.out

cp: /usr/local/etc/mpd4/mpd.links: No such files or directory

to check before overwrite see /usr/Custelr/mpd4/mpd.conf.out

cp: /usr/local/etc/mpd4/mpd.conf: No such files or directory

 

chmod /usr/local/etc/mpd4/io*: No such files or directory

Error sript 4-VPN_Configure FILED!!!

 

 

Причем я обратил внимание, что когда отрабатывает 1ый скрипт который качает с фтп корбины файло пишется следущее

ftp:connect: Connection refused

Not connected

Not connected

cat: /usr/Custeler/ftp.list: No such file or directory

 

но в конце пишет

Packages installed succesfully

 

 

PS я уже несколько раз пытался проделать все заново...но результат один и тот-же ошибка при выполнении 4ого скрипта ...

Что нужно выложить для полноты картины?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
хмм поторопился я расслабляться ..

тут вот такая ошибка вылетает с mpd

когда начинает отрабатывать 3ий скрипт ... я выбираю protocol type pptp

пишу логин и пароль от ВПН подключения

to check before overwrite see /usr/Custelr/mpd4/mpd.links.out

cp: /usr/local/etc/mpd4/mpd.links: No such files or directory

to check before overwrite see /usr/Custelr/mpd4/mpd.conf.out

cp: /usr/local/etc/mpd4/mpd.conf: No such files or directory

 

chmod /usr/local/etc/mpd4/io*: No such files or directory

Error sript 4-VPN_Configure FILED!!!

 

 

Причем я обратил внимание, что когда отрабатывает 1ый скрипт который качает с фтп корбины файло пишется следущее

ftp:connect: Connection refused

Not connected

Not connected

cat: /usr/Custeler/ftp.list: No such file or directory

 

но в конце пишет

Packages installed succesfully

 

 

PS я уже несколько раз пытался проделать все заново...но результат один и тот-же ошибка при выполнении 4ого скрипта ...

Что нужно выложить для полноты картины?

Вообще у тебя не отрабатывается первый скрипт который ставит пакаджи попробуй с свмого роутера залезть на ftp.corbina.net

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ну собственно проблема такая - до фтп корбины не достучаться при наличии локалки ..

стоит подключить ВПН .. сразу становится доступен корбиновский фтпшник ...

это с виндовой машинки

>ping ftp.corbina.net

 

Обмен пакетами с earth.corbina.net [195.14.50.21] по 32 байт:

 

Превышен интервал ожидания для запроса.

Превышен интервал ожидания для запроса.

 

Статистика Ping для 195.14.50.21:

Пакетов: отправлено = 2, получено = 0, потеряно = 2 (100% потерь)

 

это с роутера

googlenet# ping ftp.corbina.net

PING earth.corbina.net (195.14.50.21): 56 data bytes

36 bytes from 10.123.2.193: Communication prohibited by filter

Vr HL TOS Len ID Flg off TTL Pro cks Src Dst

4 5 00 5400 6f63 0 0000 3e 01 eb69 10.106.34.79 195.14.50.21

Похоже ftp.corbina.net находится в другой подсети

> ftp.corbina.net

Server: hdns1.corbina.net

Address: 213.234.192.8

 

Name: earth.corbina.net

Address: 195.14.50.21

Aliases: ftp.corbina.net

я же получаю айпишник из 10.Х.Х.Х

Это получается, что при установке впн соединения прописываются необходимые роуты?

хотя вот вывод команды netstat -rn

googlenet# netstat -rn

Routing tables

 

Internet:

Destination Gateway Flags Refs Use Netif Expire

default 10.106.32.1 UGS 0 60 rl0

10.0.0.0/8 10.106.32.1 UGS 0 0 rl0

10.106.32.0/19 link#1 UC 0 0 rl0

83.102.254.0/24 10.106.32.1 UGS 0 0 rl0

85.21.192.3 10.106.32.1 UGHS 0 6 rl0

127.0.0.1 127.0.0.1 UH 0 0 lo0

192.168.0.0/19 link#2 UC 0 0 rl1

192.168.1.2 00:15:f2:15:40:71 UHLW 1 63 rl1 1062

195.14.40.141 10.106.32.1 UGHS 0 24 rl0

195.14.50.1 10.106.32.1 UGHS 0 0 rl0

195.14.50.3 10.106.32.1 UGHS 0 0 rl0

213.234.192.8 10.106.32.1 UGHS 0 26 rl0

233.32.240.0/24 10.106.32.1 UGS 0 0 rl0

239.255.255.0/24 10.106.32.1 UGS 0 0 rl0

 

Internet6:

Destination Gateway Flags Net Expire

::1 ::1 UHL lo

fe80::%lo0/64 fe80::1%lo0 U lo

fe80::1%lo0 link#6 UHL lo

ff01:6::/32 fe80::1%lo0 UC lo

ff02::%lo0/32 fe80::1%lo0 UC lo

 

ЗЫ территориально нахожусь в Питере, Центральный район ... если это играет какую либо роль )

Изменено пользователем vinaction

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ха вот в этом видимо всё и дело :blink:

Попробуй без установления соединения с интернетом (я так понял у тебя только с винды в интернет можно выйти?) но если всёже работает и с фряхи то добавь ручками роут route add -host 195.14.50.21 10.106.32.1

ну и потом соответственно можно его пингануть если пинг пройдёт всё пучком можно стартануть скрипт. Удачи :D

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Ха вот в этом видимо всё и дело :)

Попробуй без установления соединения с интернетом (я так понял у тебя только с винды в интернет можно выйти?) но если всёже работает и с фряхи то добавь ручками роут route add -host 195.14.50.21 10.106.32.1

ну и потом соответственно можно его пингануть если пинг пройдёт всё пучком можно стартануть скрипт. Удачи :shok:

хмм добавил

googlenet# route add -host 195.14.50.21 10.106.32.1

add host 195.14.50.21: gateway 10.106.32.1

googlenet# ping ftp.corbina.net

PING earth.corbina.net (195.14.50.21): 56 data bytes

36 bytes from 10.123.2.193: Communication prohibited by filter

Vr HL TOS Len ID Flg off TTL Pro cks Src Dst

4 5 00 5400 d13d 0 0000 3e 01 898f 10.106.34.79 195.14.50.21

 

что значит Communication prohibited by filter это типа чей фильтр то срабатывает мой? ipfw?

PS походу не мой .. меня на шлюзе блочат ... вот в этой теме описывается похожая штука ... Делаем роутер из сервера на FreeBSD

единственное НО .. там человек ошибся с дефолтным шлюзом .. у меня же он правильный. =(( куда рыть... не пойму

PSЫ в конце этой темы Какие диапазоны ip-адресов у Билайна?

человек тоже жалуется, что доступ до фтпшника получаешь только после установки ВПН соединения =(( ... как быть? Трясти саппорт?

 

UPDATE - потряс сапорт.. вот что получил в ответ

 

Вы писали 12 мая 2009 г., 16:32:15:

 

> Здравствуйте!

> При подключении к ftp.corbina.ru возникает ошибка - "Время ожидания

> соединения истекло". Пинг до этого ресурса тоже не проходит

>>ping ftp.corbina.ru

 

> Обмен пакетами с earth.corbina.ru [195.14.50.21] по 32 байт:

 

> Превышен интервал ожидания для запроса.

> Превышен интервал ожидания для запроса.

> Превышен интервал ожидания для запроса.

> Превышен интервал ожидания для запроса.

 

> Статистика Ping для 195.14.50.21:

> Пакетов: отправлено = 4, получено = 0, потеряно = 4 (100% потерь),

 

 

> пробовал прописать роут как написано у вас

> http://help.corbina.net/internet/local/routhow/

> ftp.corbina.net

> route -p add 195.14.50.21 mask 255.255.255.255 шлюз

 

> шлюз соотвественно брал свой -

>>ipconfig

 

> Настройка протокола IP для Windows

> Подключение по локальной сети - Ethernet адаптер:

 

> DNS-суффикс этого подключения . . : corbina.net

> IP-адрес . . . . . . . . . . . . : 10.106.33.193

> Маска подсети . . . . . . . . . . : 255.255.224.0

> Основной шлюз . . . . . . . . . . : 10.106.32.1

 

> результат тот же .. пинг не ходит, к фтп не пускает.

 

> Стоит подключить VPN соединение и сразу начинает ходить пинг и

> открываться ftp.corbina.ru

> Очень бы хотелось узнать почему не получить доступ к фтп ресурсу при

> наличии локальной сети ... так как в той же теме

> http://help.corbina.net/internet/local/routhow/

> сказано - "Без VPN-соединения с Интернет Вам доступны только сетевые

> ресурсы Вашего района."

> Или этот фтп сервер не является сетевым ресурсом моего района?

> Но тогда это более чем странно, так как территориально я нахожусь в

> Центральном районе Санкт-Петербурга.

 

Здравствуйте!

 

Для Вашего района данный ресурс доступен только через VPN-соединение,

локального пиринга нет.

 

Коротко и ясно ... =/

Вопрос остается - как быть если доступа на ftp.corbina.net НЕТ?

Изменено пользователем vinaction

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Настроил все по приведенным тут руководствам - заработало со второго раза (FreeBSD 7.0 версии), так как первоначально я на ПК с Windows редактировал файлы конфигураций и записывал их на дискетку (инет билайновский+захотелось что-то по своему обозвать и убрать l2tp). А когда скопировал на ПК-роутер файлы с дискетки, их имена подрезались до 8+3 символов.. Руками все восстановил, но скрипты не захотели запускаться. Пришлось создать дискету заново и в FreeBSD все вручную редактировать. Но слава богу, все получилось (есть и ТВ и фтп). Даже нагрузка на 12-мбитном тарифе торрентами ничего не подвешивает и VPN не разрывается, что было на роутере-мыльнице.

 

Теперь вопросы:

 

1. Безопасность - в принципе роутер нужен был чтобы обеспечить защиту от поползновений из локалки и из инета в мою домашнюю сеть - существующая схема работы роутера обеспечивает безопасность? Естественно доступ на этот роутер через терминал только с одного из домашних ПК и пароль 16-символьный получился.

 

2. В настройках сетевухи на ПК с Windows я первоначально выбирал в качестве адреса ДНС адрес роутера - ничего не работало, но отлично пинговалось по IP-адресам. Пришлось ставить билайновские IP адреса ДНС вручную. Это у всех так или я не то что-то делаю? Есть-ли нормальное решение, чтобы адреса ДНС серверов не прописывать а указать только адрес роутера?

 

3. Если произойдет потеря VPN соединения по вине провайдера восстановит-ли роутер сам соединение, когда для этого появятся все условия?

 

4. В файле router.config есть параметры NS2_Serv и NS1_Serv. А какие значения надо ставить в низ применительно к билайну? Я поставил ns1.beeline.ru и ns2.beeline.ru - вроде нигде не ругается на такие имена, но правильно ли это?

 

Спасибо за внимание и отдельное СПАСИБО Custler за такую работу!

Изменено пользователем MCU Destroyer

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Custler, респект за проделанную работу! :lol:

Есть просьба... выложить примеры последнего варианта конфигов... я при настройке использоал твои конфиги из прошлой темы... я немного другую связку использую... но они сильно помогли...

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Извиняюсь за долгое молчание, но сейчас постараюсь ответить всем.

Итак.

1. Некоторое время, после выхода релиза 7.1, директория packages-7.0-release отсутствовала, а вместо неё появилась packages-7-stable. А у меня жестко прописано packages-7.0-release, поэтому и не качалось. Теперь всё восстановлено и должно работать.

 

2. Добавить всё к архиву не получится. Например MidhightCommander (mc) требует загрузки ещё нескольких пакетов и размер будет неправильным. Приложить можно было бы только mpd но тогда нужно править скрипт, а для меня это сейчас проблематично, так как я сейчас использую failover систему и испытать новый скрипт мне пока неначем.

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

 

3. Безопасность. Весь роутер находится за NATом. и из внешнего мира (локалки и интернета) доступны только те сервисы для которых сознательно сделаны редиректы в домашнюю сеть. Если на самом роутере поднимаются какие-либо серверы (например http), то можно дополнительно запретить доступ к их портам из внешнего мира, добавив в конце /etc/pf.conf строку типа:

block in quick on {$ext_if $vpn_if} proto tcp from any to any port {ssh smtp 80}

 

4. ДНС. На роутере изначально не установлен никакой днс сервер, поэтому на всех домашних компах надо прописывать днс-ы провайдера. Я уже почти отладил систему failover на двух провайдеров, вот там без днс сервера, мягко говоря, неудобно. Возможно через недельку у меня освоболится один комп, на котором можно будет поэкспериментировать и, тогда я наконец-то смогу приступить к написанию нового скрипта.

 

5. Разрыв соединения ВПН. При обрыве соединения, mpd будет самомтоятельно долбиться и пытаться его восстановить. Как только это станет возможно он автоматом восстановит соединение.

 

 

MCU Destroyer

ДНСы всегда надо прописывать циферками, то бишь IP адресом. Иначе получается замкнутый круг - что чтобы решить имя надо обратиться к ДНС, а чтобы обратиться к ДНС надо знать его адрес, который надо разрешить из имени... и так по кругу.

Но вообще-то, эти переменные сделаны для прописывания дополнительных днс серверов. В нормальном же случае, ДНС адреса выдаются по DHCP при подключении к локальной сети Корбины (Билайна).

Изменено пользователем Custler

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Custler, ну я имел ввиду необходимое... мпд собственно добавить... что бы связь устанавливалась в итоге... я думаю без баша и мц люди переживут... :)

Как насчет просьбы? свежие примеры конфигов... не хочется ставить виртуальную бсд (причем 7.0) ради этого... ;)

 

По поводу безопасности не волнуйтесь... ничего особенного наружу по умолчанию не торчит... а добраться до локалки через НАТ - очень не просто... ;) вы скорее сами на виндовые машины наловите всякого дерьма с левых сайтов, чем кто-то проберется снаружи через роутер... проверенно годами лично... ;)

 

По поводу восстановления автоматом... уже неоднократно натыкался на ситуацию когда соединеие не обрывается, а висит... трафик по нему не ходит... а мпд считает, что всё ОК...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Спасибо за внимание к вопросам - кое что стало ясно. Но не совсем... Насчет переменных NS2_Serv и NS1_Serv не смог понять, чтоже в них должно быть? Корбилайн :) выдает по DHCP два адреса серверов DNS. А если есть еще два резервных, не равных выданным Корбилайном (в конечном счете, свободные DNS), то в переменные и надо записать их IP адреса?

 

По поводу сервера DHCP на внутреннем интерфейсе (чтобы выдавать адреса и т.п. для устройств моей домашней сеточки). Читал много чего, вроде как стало получаться:

 

Применительно к FreeBSD версии 7.0 (внутренний адрес роутера у меня 192.168.1.1, внутренний интерфейс sk1, внешний sk0). Скрипты отработали полностью и без ошибок из файлов Custlerа, из его 1-го поста. Использую мс или ее.

 

1. Залезаем в /usr/ports/net/isc-dhcp3-server

2. Даем команду make install clean

3. Чтбы запустить сам сервер на роутере при старте системы и указать, что он будет работать на внутреннем интерфейсе, добавляем в /etc/rc.conf строки:

dhcpd_enable="YES" # запускать DHCP сервер при старте системы

dhcpd_ifaces="sk1" # мой внутренний интерфейс

 

4. Залезаем в /usr/local/etc/rc.d Там должен быть файл isc-dhcpd.sh Если его нет, а есть файл isc-dhcpd.sh.samle то надо дать команду mv isc-dhcpd.sh.samle isc-dhcpd.sh ( она переименует файл isc-dhcpd.sh.samle в нужный нам файл isc-dhcpd.sh )

5. Редактируем (или создаем, если изначально отсутствует) файл с настройками сервера DHCP командой ee /usr/local/etc/dhcpd.conf

Вот что в нем надо:

 

default-lease-time 3600; # время аренды по умолчанию

max-lease-time 86400; # максимальное время аренды

authoritative; # у нас единственный DHCP сервер во внутренней сети

ddns-update-style interim; # динамический стиль обновления DNS (что это значит - не знаю)

log-facility local7; # тоже не знаю про этот параметр

subnet 192.168.1.0 netmask 255.255.255.0 { # наша подсеть в которой будем выдавать адреса

 

range 192.168.1.52 192.168.1.59; # интервалы ip адресов на выдачу клиентам можно еще указать другой интервал адресов, такой же командой ниже

option routers 192.168.1.1; # адрес нашего роутера

option domain-name-servers 213.234.192.8; # адрес DNS сервера, как я понял выданного провайдером

option domain-name "office.mydomen.ru"; # полное имя домена, что за параметр и зачем нужен - не понял, DHCP работает даже если тут адрес от балды...

 

}

 

Сохраняем наш файл конфигурации и затем даем команду на запуск сервера DHCP /usr/local/etc/rc.d/isc-dhcpd.sh start Если все нормально, сообщений об ошибках быть не должно. Если ошибки есть, стрелочкой покажет где ошибка и в какой строке по счету...

 

Смотрим, что наш DHCP сервер работает командой ps -ax | grep dhcpd Если сервера нет, залезаем в /var/log/messages и ищем ошибки про DHCP сервер.

 

Какие проблемы обнаружил:

 

1. Корбилайн выдает два адреса DNS. Я не пойму пока как указать второй адрес DNS. Пробовал писать через пробел оба адреса в виде

 

option domain-name-servers 213.234.192.8 85.21.192.3;

 

выдает ошибку на начале IP второго DNS.

 

Пробовал писать две строки вида

 

option domain-name-servers 213.234.192.8;

option domain-name-servers 85.21.192.3;

 

тоже вызывает ошибку... С одним адресом работает успешно и отдает его по DHCP.

 

2. В конфигурации можно указать жесткую привязку выдаваемого IP к МАСу командами:

 

host netbook { # имя нашего хоста (устройства, запрашивающего сервер DHCP ??)

hardware ethernet 00:c0:9f:1e:64:92; # MAC адрес сетевой карты хоста

fixed-address 192.168.1.55; # ip адрес для этого хоста

 

}

 

А вот у меня эта конструкция не заработала... Выдает ошибку в строке host netbook { на слове netbook

Почему не понял. Соответственно IP для указанного МАС не выдается.

 

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

 

 

В процессе разборки с сервером DNS (или кешированием DNS)...

Изменено пользователем MCU Destroyer

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

правильно будет

option domain-name-servers 213.234.192.8, 85.21.192.3;

 

ddns-update-style interim; на ddns-update-style none;

и заработает :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Спасибо за супер-скрипт! Все встало с нуля и до финала с первого же пинка (не считая времени, пока я соображал, как примонтировать флэшку) и работает отлично! По безопасности все-таки терзаюсь - нужно ли как-то дополнительно настраивать встроенный файрвол и как именно, можно ли теперь отключать комповые файрволы... Может стоит завести отдельную тему: безопасность при freebsd - роутере? А то у меня загрузка процессора на роутере какие-то жалкие 10%, явно его можно поднагрузить задачами:crazy:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Спасибо за супер-скрипт! Все встало с нуля и до финала с первого же пинка (не считая времени, пока я соображал, как примонтировать флэшку) и работает отлично!

На здоровье!

 

По безопасности все-таки терзаюсь - нужно ли как-то дополнительно настраивать встроенный файрвол и как именно, можно ли теперь отключать комповые файрволы... Может стоит завести отдельную тему: безопасность при freebsd - роутере? А то у меня загрузка процессора на роутере какие-то жалкие 10%, явно его можно поднагрузить задачами:D

NAT даёт достаточную защиту. У меня на домашних машина файерволы отключены. Теоретические дыры в защите - запущенные сервисы, торчащие наружу (типа ftp, web-сервер) и тут всё уже зависит от защищенности самих сервисов. Вот например, после установки на роутер для внутреннего пользования MySQL , чтобы к нему наверняка не было доступа снаружи, надо проверить что его порты закрыты на внешних интерфейсах. Но вообще-то перегружать роутер задачами - не самый правильный подход. Чем больше задач - тем больше возможных глюков.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
.....

явно его можно поднагрузить задачами:(

 

Вот, например, общественно-полезная задача - http://torrents.ru/forum/viewtopic.php?t=1147576

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас