11 октября 2010 г.

Кошка на потоке.

Дома для доступа в интернет я давно (фактически - с самого начала их выхода на рынок) использую Стрим. Перепробовав кучу китайских модемов-роутеров, я в результате плюнул и разорился на Cisco 877W и с тех пор как говориться «не было не единого разрыва». Недавно они провели очередную акцию, как обычно - более скоростной тариф, по более низкой цене, но в придачу к нему прилагался бесплатный TV-декодер и 70 каналов на халяву, в результате чего я все-таки отладил конфигурацию своей кошки для работы со СтримТВ и проверил ее на практике. И сейчас хочу поделиться оной с вами.
Отмазка: я знаю что конфиг не идеален, что в том числе в нем остались хвосты от моих экспериментов, но я попытался почистить его от всего лишнего. К тому же я снабдил конфиг некоторыми комментариями, чтоб малознакомым с кошками людям (но неплохо разбирающимся в ip-сетях) было попроще разобраться что к чему.
Сразу замечу - данная конфигурация работает только в конфигурации IOS с Advanced IP Services, c Advanced Security - не поддерживаются VLAN и в таком варианте приходится использовать более замороченную конфигурацию с ACL. Она есть в интернетах, но я ее не проверял - мне было проще залить нужный IOS.
Зеленым цветом я выделяю свои комментарии к конфигу, красным - те части конфига, вместо которых Вам надо подставить свои значения.

no service pad
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
"Волшебная фраза" - включает некоторые так называемые «экспериментальные» 
возможности в том числе например PPTP-клиент.
!
service internal
!
Название (имя хоста) для свой кошки придумаете сами, ок? :)
!
hostname <hostname>
!
boot-start-marker
boot-end-marker
!
! Я в курсе что хранить enable password в открытом виде не кошерно.
!
logging message-counter syslog
logging buffered 51200 warnings
enable password <password>
!
aaa new-model
!
!
aaa authentication ppp default local
!
aaa server radius dynamic-author
!
aaa session-id common
!
Собственно если Вы живете в другом часовом поясе, не в московском - установите его.  
!
clock timezone MSK 3
!
А вот здесь мы начинаем настраивать Wi-Fi.
Если не используете - игнорируйте данную секцию.
!
dot11 syslog
!
dot11 ssid <ssid>
 authentication open
 authentication key-management wpa
 guest-mode
 infrastructure-ssid optional
 wpa-psk ascii 0 <wpa-key>
!
ip source-route
!
! Настраиваем DHCP. Используем Google Public DNS, но разумеется можно использовать

! и DNS-ы Стрима - 212.188.4.10 и 195.34.32.116 
!
no ip dhcp use vrf connected
!
ip dhcp pool 
   import all
   network 192.168.1.0 255.255.255.0
   default-router 192.168.1.1
   dns-server 8.8.8.8 8.8.4.4
   lease 0 2
!
Назначение статического IP-адреса. В client-identifer 01 перед MAC-адресом
ставить обязательно! Это так называемый «тип сети».
Подробнее - www.cisco.com
!
ip dhcp pool 
   host 192.168.1.65 255.255.255.0
   client-identifier 01**.****.****.**
   client-name 
!
! Без этого - будет тормозить. Подробности - www.cisco.com
!
ip cef
!
Доменное имя придумаете свое. Можно просто проигнорировать данную строчку. 
Указание DNS-ов в данном месте нужно исключительно самой кошке и не влияет 
на работу других сетевых устройств. 
!
ip domain name <domainname>
ip name-server 8.8.8.8
ip name-server 8.8.4.4
!
Использование динамического DNS на примере www.dyndns.org
! Необходимо для того чтоб обращаться к ресурсам вашей локальной сети «снаружи»
! по адресу <hostname>.dyndns.org
В данном конфиге используется для совместной работы с PPTP-сервером.
! Можно использовать и другие сервисы DDNS, например www.editdns.net.
У меня работает не очень стабильно, причину пока не выяснил.
!
ip ddns update method dyndns
 HTTP
  add http://
<username>:<password>@members.dyndns.org:8245/nic/updatehostname=<hostname>.dyndns.org
 interval maximum 28 0 0 0
!

!
no ip igmp snooping
no ipv6 cef
!
Синхронизация часов кошки. 
!
ntp server pool.ntp.org
!
multilink bundle-name authenticated
!
Начало настройки PPTP-сервера. 
!
vpdn enable
!
vpdn-group <vpdngroupname>
! Default PPTP VPDN group
 accept-dialin
  protocol pptp
  virtual-template 1
!
! Пользователи кошки.
! Первый пользователь имеет мах. уровень привилегий
 и его пароль хранится в зашифрованном виде.
 Второй пользователь имеет мин. уровень привелегий
 и его пароль хранится в открытом виде.
 Первый пользователь используется для административных нужд,
 второй - для авторизации на PPTP-сервере.
 Внимание! У второго пользователя пароль обязательно не должен шифроваться!
!
username <username> privilege 15 secret 5 <password>
username <username> privilege 0 password 0 <password>
!
!
!
archive
 log config
  hidekeys
!
!
ip ssh version 1
!
! Включаем режим интегрированной маршрутизации и установки мостового соединения.
У нас имеется два мостовых соединения: 
Первое объединяет радиоинтерфейс и локальную сеть
Второе - для работы СтримТВ 
!
bridge irb
!
!
interface ATM0
 no ip address
 no atm ilmi-keepalive
 dsl operating-mode ansi-dmt
 dsl bitswap both
!
interface ATM0.1 point-to-point
 description Stream Internet
 pvc 1/50
  pppoe-client dial-pool-number 1
 !
!
interface ATM0.2 point-to-point
 description Stream TV (VOD)
 pvc 1/91
  encapsulation aal5snap
 !
 bridge-group 2
 bridge-group 2 spanning-disabled
!
interface ATM0.3 point-to-point
 description Stream TV (MCAST)
 pvc 1/92
  encapsulation aal5snap
 !
 bridge-group 2
 bridge-group 2 spanning-disabled
!
interface FastEthernet0
 spanning-tree portfast
!
interface FastEthernet1
 spanning-tree portfast
!
interface FastEthernet2
 description Stream TV
 switchport access vlan 2
 no keepalive
 spanning-tree portfast
!
interface FastEthernet3
 spanning-tree portfast
!
interface Virtual-Template1
 description Virtual Interface for pptp access from Internet to LAN
 ip unnumbered BVI1
 peer default ip address pool <poolname>
 ppp encrypt mppe 128 required
 ppp authentication pap chap ms-chap ms-chap-v2
!
Собственно настройка радиоинтерфейса
Значения мощности приема-передатчика и канал подберите сами!
Ибо совсем не обязательно что мои Вам хорошо подойдут.
!
interface Dot11Radio0
 no ip address
 !
 encryption mode ciphers tkip
 !
 broadcast-key change 60
 !
 !
 ssid <ssid>
 !
 speed basic-1.0 basic-2.0 basic-5.5 basic-6.0 basic-9.0 basic-11.0 basic-12.0 basic-18.0 basic-24.0 basic-36.0 basic-48.0 basic-54.0
 power local cck 7
 power local ofdm 7
 power client 7
 channel 2417
 station-role root
 bridge-group 1
 bridge-group 1 subscriber-loop-control
 bridge-group 1 spanning-disabled
 bridge-group 1 block-unknown-source
 no bridge-group 1 source-learning
 no bridge-group 1 unicast-flooding
!
interface Vlan1
 description My Home LAN
 no ip address
 bridge-group 1
!
interface Vlan2
 description Stream TV
 no ip address
 bridge-group 2
 bridge-group 2 spanning-disabled
!
PPPoE соединение для стрима.
Насколько я понимаю нужна одна из двух авторизаций - либо pap, либо chap
Разумеется ненужную можно удалить, но какую точно - я не помню. :)
! Да, nbar можно везде выключать, чтоб не жрал ресурсы.
!
interface Dialer1
 description Stream PPPoE (Internet Connection)
 ip ddns update hostname <hostname>.dyndns.org
 ip ddns update dyndns
 ip address negotiated
 ip mtu 1492
 ip nbar protocol-discovery
 ip nat outside
 ip virtual-reassembly
 encapsulation ppp
 ip tcp adjust-mss 1452
 logging event subif-link-status
 dialer pool 1
 dialer-group 1
 no cdp enable
 ppp authentication chap pap callin
 ppp chap hostname <username>@mtu
 ppp chap password 0 <password>
 ppp pap sent-username <username>@mtu password 0 <password>
 ppp ipcp dns request
 ppp ipcp wins request
!
interface BVI1
 description Common interface for Wi-Fi & Eth.
 ip address 192.168.1.1 255.255.255.0
 ip nat inside
 ip virtual-reassembly
 ip tcp adjust-mss 1452
!
Из этого пула адресов будет выделятся ip адрес для клиента, подключающегося
к вашей кошке по PPTP.
!
ip local pool <poolname> 192.168.1.200 192.168.1.250
ip forward-protocol nd
!
Постоянно забываю эту строчку - собственно это default gateway... :)
!
ip route 0.0.0.0 0.0.0.0 Dialer1
!
Береженого бог бережет...
!
no ip http server
no ip http secure-server
!
Тут собственно настройки NAT - последняя строчка, 
статическая трансляция для компа с торрентами
Первые две - неудачная попытка победить один из неприятных багов в IOS 12.4(24)T1
!
ip nat translation tcp-timeout 3600
ip nat translation udp-timeout 3600
ip nat inside source list <nat-acl-name> interface Dialer1 overload
ip nat inside source static tcp 192.168.1.66 50505 interface Dialer1 50505
!
ip access-list extended <nat-acl-name>
 permit ip 192.168.1.0 0.0.0.255 any
dialer-list 1 protocol ip permit
!
Береженого бог бережет...
!
no cdp run
!
!
!
!
!
control-plane
!
bridge 1 protocol ieee
bridge 1 route ip
!
line con 0
 exec-timeout 0 0
 no modem enable
line aux 0
line vty 0 4
 exec-timeout 1440 0
 privilege level 15
 transport input telnet ssh
!
scheduler max-task-time 5000
end



Комментариев нет:

Отправить комментарий