Връзка към INTERNET

Още не мога да се определя какво точно да покажа. Дали видове връзка към Internet, или и още нещо. Но да започнем от най-простата постановка.


Pic01

Имаме доставчик на Интернет (оранжевото квадратче) и наша локална мрежа включваща рутер и компютри (жълто квадратче). Доставчика на Интернет ще ни предлага услугата като раздава IP адреси по DHCP. Нашата цел е всички компютри намиращи се зад рутера да имат достъп до Интернет. На пръв поглед простичка задача. За по-интересно малко ще я усложним. - Клиентите ще получават IP адреси от DHCP сървър намиращ се на Router0, - Директора иска IP с точно определен адрес, - Работника ще получава Интернет с ограничена скорост. Започваме с нашата мрежа, а по-точно с настройката на Router0. За начало да се заемем с DHCP сървъра.

Router0>en Router0#configure terminal Router0(config)#do show vlan VLAN Name Status Ports ---- -------------------------------- --------- ------------------------------- 1 default active Fa0/0/0, Fa0/0/1, Fa0/0/2, Fa0/0/3 1002 fddi-default active 1003 token-ring-default active 1004 fddinet-default active 1005 trnet-default active VLAN Type SAID MTU Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2 ---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------ 1 enet 100001 1500 - - - - - 0 0 1002 fddi 101002 1500 - - - - - 0 0 1003 tr 101003 1500 - - - - - 0 0 1004 fdnet 101004 1500 - - - ieee - 0 0 1005 trnet 101005 1500 - - - ibm - 0 0 VLAN Type SAID MTU Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2 ---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------ Remote SPAN VLANs ------------------------------------------------------------------------------ Primary Secondary Type Ports ------- --------- ----------------- ------------------------------------------ Router0(config)#interface vlan1 Router0(config-if)#ip address 192.168.1.1 255.255.255.0 Router0(config-if)#no shutdown

Набързо до тук: - Видяхме, че четирите физически интерфейса (Fa0/00/0, Fa0/0/1, Fa0/0/2, Fa0/0/3) се намират в един VLAN1 и затова него ще дефинираме в DHCP сървъра, - На VLAN1 дадохме статично IP, Продължаваме с DHCP конфигурацията на Router0.

Router0(config-if)#exit Router0(config)#ip dhcp ? # показва какви опции предлага DHCP командата excluded-address Prevent DHCP from assigning certain addresses pool Configure DHCP address pools relay DHCP relay agent parameters Router0(config)#ip dhcp pool DHCP1 # Даваме име на DHCP пула (може да има много такива). Router0(dhcp-config)#default-router 192.168.1.1 # Дефинираме шлюза по подразбиране. Router0(dhcp-config)#network 192.168.1.0 255.255.255.0 # Дефинираме мрежата в която ще се раздават адреси. Router0(dhcp-config)#dns-server 8.8.8.8 1.1.1.1 # Дефинираме DNS сървъра. Router0(dhcp-config)#domain-name tlan.net # Дефинираме домейна. Router0(dhcp-config)#end

До тука всичко добре, даже работи нормално, има обаче няколко проблема. Ако в мрежата има примерно сървъри, то те по принцип ползват статични адреси. За целта трябва част от адресите да се резервират и да не се раздават от DHCP сървъра. Да оправим този проблем.

Router0#configure terminal Router0(config)#ip dhcp excluded-address 192.168.1.1 192.168.1.99 Router0(config)#end

На практика ще се раздават адреси от 192.168.1.100 до 192.168.1.254 и предните свободни адреси ще може да се ползват за дефиниране на статични такива. Изключихме и 192.168.1.1 защото това е IP-то на интерфейса на рутера. Остава проблема с адреса на Директора. Той трябва да е статичен и да е примерно 192.168.1.111. Ще ни трябва MAC адреса му. Знаем, че сега е получил произволно IP от позволените адреси в моя случай е:192.168.1.101. От рутера да видим MAC-а му.

Router0#show ip dhcp binding IP address Client-ID/ Lease expiration Type Hardware address 192.168.1.101 0100.000C.A4AC.AE -- Automatic

MAC адреса е: 00:00:0C:A4:AC:AE. Обаче остава проблема и с самия адрес, който също е в дефинираните от нас граници на раздаване. Какво да правим?

Router0(config)#ip dhcp excluded-address 192.168.1.111 # Изключваме адреса от раздаващата се поредица. Router0(config)#ip dhcp pool STATIC # Създаваме нов пул за статичните адреси Router0(dhcp-config)#host 192.168.1.111 # IP-то на статичния адрес Router0(dhcp-config)# client-identifier 0100.5079.6668.00 # Това е идентификатора на статичния клиент, вместо client-identifier може да се ползва hardware-address 0000.0CA4.ACAE, Router0(dhcp-config)#client-name Director # Име което да ни напомня за кого се отнася Router0(dhcp-config)#default-router 192.168.1.1 # Шлюз по подразбиране за Директора Router0(dhcp-config)#dns-server 8.8.8.8 1.1.1.1 # DNS за Директора Router0(dhcp-config)#domain-name tlan.net # Домейн за Директора Router0(dhcp-config)#exit Router0(config)#no service dhcp # Рестартираме DHCP-то Router0(config)#service dhcp Router0(config)#end Router0#clear ip dhcp binding * # Изчистваме хронологията на присвоените IP-та. Така ще се създадат нови.

Рестартираме клиента да си получи наново IP-то от DHCP-то. Искам да подчертая една забележка. Казах, че вместо client-identifier може да се ползва hardware-address. Това е вярно но има една уловка. Хардуерния адрес когато се пише за Linux клиент и Windows клиент се различава. МАС-а на Linux клиента е от вида 0000.0CA4.ACAE , а на Windows-a най-отпред се добавя едно 01 и става 0100.000C.A4AC.AE. Това беше малко но важно уточнение. Приключихме с нашата локална мрежа, сега остава да се свържем с доставчика на Интернет по начина по който той каже. Приемаме, че сме говирили с него и ни е предложил да получим Интернет черз DHCP клиент. Това е първия и най-прост начин. Отново се прехвърляме на Router0

Router0#configure terminal Router0(config)#interface fastEthernet 0/0 Router0(config-if)#ip address dhcp # Указваме, че интерфейса Fa 0/0 ще получи IP по DHCP Router0(config-if)#no shutdown Router0(config-if)#end


Да проверим това:

Router0#show ip interface brief Interface IP-Address OK? Method Status Protocol FastEthernet0/0 172.16.0.100 YES DHCP up up FastEthernet0/1 unassigned YES unset administratively down down FastEthernet0/0/0 unassigned YES unset up up FastEthernet0/0/1 unassigned YES unset up up FastEthernet0/0/2 unassigned YES unset up up FastEthernet0/0/3 unassigned YES unset up down Vlan1 192.168.1.1 YES manual up up

Всичко работи и получихме така желаното IP по DHCP. Сега да проверим дали всичко освен IP-то е дефинирано на интерфейса:

Router0#show ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is 172.16.0.1 to network 0.0.0.0 172.16.0.0/24 is subnetted, 1 subnets C 172.16.0.0 is directly connected, FastEthernet0/0 C 192.168.1.0/24 is directly connected, Vlan1 S* 0.0.0.0/0 [254/0] via 172.16.0.1

Всичко е точно и шлюза по подразбиране е налице. Да проверим от Router0 до къде имаме Ping

Router0#ping 172.16.0.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.0.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 0/0/0 ms Router0#ping 8.8.8.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 8.8.8.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 0/0/0 ms Router0#ping 8.8.8.8 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 8.8.8.8, timeout is 2 seconds: .!!!! Success rate is 80 percent (4/5), round-trip min/avg/max = 0/0/0 ms

Router0 излиза в Интернет. Да проверим чрез някой от клиентите, примерно през Директор.

C:\>ping 192.168.1.1 Pinging 192.168.1.1 with 32 bytes of data: Reply from 192.168.1.1: bytes=32 time<1ms TTL=255 Reply from 192.168.1.1: bytes=32 time<1ms TTL=255 Reply from 192.168.1.1: bytes=32 time<1ms TTL=255 Reply from 192.168.1.1: bytes=32 time<1ms TTL=255 C:\>ping 172.16.0.100 Pinging 172.16.0.100 with 32 bytes of data: Reply from 172.16.0.100: bytes=32 time<1ms TTL=255 Reply from 172.16.0.100: bytes=32 time<1ms TTL=255 Reply from 172.16.0.100: bytes=32 time<1ms TTL=255 Reply from 172.16.0.100: bytes=32 time<1ms TTL=255 C:\>ping 8.8.8.1 Pinging 8.8.8.1 with 32 bytes of data: Request timed out. Request timed out. Request timed out. Request timed out.

Не излиза в Интернет, но достига до външния интерфейс на Router0. За целта ще ползваме NAT на Router0.

NAT

NAT се превежда като NETWORK ADDRESS TRANSLATION. Сега в най-груб вариант ще обясня за какво се ползва. В болшенството от случаите когато получите достъп до Internet, доставчика Ви дава едно публично IP. То е описано в маршрутните таблици на същия. Вие като потребител, най-вероятно имате повече от един компютър и за да не ползвате за всеки компютър публично IP, клиентите Ви ще ползват частни IP адреси. Частните адреси са в границите на 10.0.0.0 до 10.255.255.255, 172.16.0.0 до 172.31.0.0 и 192.168.0.0.до 192.168.255.255. Тези частни адреси ще се ползват от клиентите, а когато ще се покажат в Интернет, ще се представят с публичния IP адрес на рутера. Именно за целта се ползва NAT. Ако не разбирате какво говоря, значи тази статия не е за Вас. Сега в груб вариант ще обясня как се прави PAT и статичен НАТ за PAT - на външния интерфейс се прилага правилото (ip nat outside) - на вътрешния интерфейс се прилага правилото (ip nat inside) - на вътрешния интерфейс който няма да има NAT (изход към Интернет) няма да му се прилага това правило - накрая се прилага правилото: ip nat inside source list FOR-NAT interface {интефейса към Интернет (Fa 0/0) overload} за Static NAT } - правилото е: ip nat inside source static {tcp} {вътрешен address} {вътрешен port} {външен address} {външен port} И така след кратката теория да се захванем с Router0

PAT

Router0#configure terminal Router0(config)#interface fastEthernet 0/0 Router0(config-if)#ip nat outside Router0(config-if)#exit Router0(config)#interface vlan 1 Router0(config-if)#ip nat inside Router0(config)#end

И така на интерфейса гледащ към Internet (Fa0/0)направихме ip nat outside, а на интерфейса гледащ към локалната мрежа (VLAN1) направихме ip nat inside Сега да определим коя мрежа или кой хост могат да ползват Интернет. Условието беше всички клиенти да го ползват. За целта се ползват ACL.

Router0#configure terminal Router0(config)#ip access-list standard INTERNET Router0(config-std-nacl)#permit 192.168.1.0 0.0.0.255 any Router0(config-std-nacl)#exit Router0(config)#ip nat inside source list INTERNET interface fastEthernet 0/0 overload

Създадохме ACL "INTERNET" с правило позволяване на мрежа 192.168.1.0/24 и накрая приложихме правилото на интерфейс Fa 0/0 с цел да позволи мрежа 192.168.1.0/24 да се NAT-не и излезе в Интернет. Обяснявам много просто, даже като за лаици но хората да могат да ме разберат. Да проверим NAT-a

Router0#show ip nat translations Pro Inside global Inside local Outside local Outside global icmp 172.16.0.100:21 192.168.1.111:21 8.8.8.1:21 8.8.8.1:21 icmp 172.16.0.100:22 192.168.1.111:22 8.8.8.1:22 8.8.8.1:22 icmp 172.16.0.100:23 192.168.1.111:23 8.8.8.1:23 8.8.8.1:23 icmp 172.16.0.100:24 192.168.1.111:24 8.8.8.1:24 8.8.8.1:24 Router0#show ip nat statistics Total translations: 2 (0 static, 2 dynamic, 2 extended) Outside Interfaces: FastEthernet0/0 Inside Interfaces: Vlan1 Hits: 4 Misses: 8 Expired translations: 2 Dynamic mappings:

Потребителя 192.168.1.111 (Директора) е излязъл към Интернет (8.8.8.1) и се е представил в Интернет като 172.16.0.100 (външния адрес на рутера). Сега да разиграем друга постановка. ИТ специалиста е някъде извън фирмата и му се налага да си достъпи компютъра (ИТ).

Static NAT (port forwardind)

Казахме правилото е:ip nat inside source static {tcp} {вътрешен address} {вътрешен port} {външен address} {външен port} {interface} Отново сме на Router0:

Router0(config)#ip nat inside source static 192.168.1.101 172.16.0.100

Така пренасочихме всички портове от IP:172.16.0.100 към IP:192.168.1.101 за всички протоколи, включително и TCP. По този начин ИТ специалиста когато се обърне към IP:172.16.0.100 на практика ще вижда своя компютър. С това приключваме упражнението, сега ще се помъча да покажа как се настройва входящия интерфейс когато доставчика предлага Интернет по PPPoE.