Alteon Layer 4 Switch Simple Manual
Server Load Balancing
Firewall Load balancing
[Configuration 메뉴]
1. interface 설정하기
>>main # cfg [configuration 메뉴로 들어가는 명령어]
>>configuration # ip [ip관련 설정을 위한 메뉴로 들어가는 명령어]
>>ip # if 1 [interface 설정 -256개의 interface를 설정할수 있음]
>> IP Interface 1# addr 192.168.1.2 [스위치의 interface 주소]
>> IP Interface 1# mask 255.255.255.0 [주소에 대한 mask ]
>> IP Interface 1# broad 192.168.1.255 [주소에 대하 브로드캐스트 address]
>> IP Interface 1# en [ip와 관련된설정 후에는 반드시 enable 을 해주어야함]
>> IP Interface 1# apply [apply를 하므로서 설정을 활성화 시킴-메모리에 저장됨]
>> IP Interface 1# save [save를 해야 NVRam에 저장되어 리부팅 후에도 사용가능]
·약식 구성방법
>>main # cfg/ip/if 1/addr 192.168.1.2/mask 255.255.255.0/broad 192.168.1.255/en
2. gateway 설정하기
>>main # cfg [configuration 메뉴로 들어가는 명령어]
>>configuration # ip [ip관련 설정을 위한 메뉴로 들어가는 명령어]
>>ip # gw 1 [gateway 를 설정 - gateway는 4개까지 설정가능]
>> Default gateway 1# addr 192.168.1.1 [gateway 주소 설정]
>> Default gateway 1# en [ip 관련 구성후 반드시 enable ]
>> Default gateway 1# apply
>> Default gateway 1# save
·약식 구성방법
>>main # cfg/ip/gw 1/addr 192.168.1.1/en/apply/save
3. 스위치 기능 설정하기
· 패스워드 변경하기
>>main # cfg
>>configuration # sys [system 메뉴로 들어감]
>>system # user [user 메뉴에서 원하는 사용자를 선택]
>> User Access Control# admpw [administrator의 password를 변경시 선택]
Changing ADMINISTRATOR password
Enter current administrator password: [현재의 로그인 패스워드 입력]
Enter new administrator password: [변경할 새로운 패스워드 입력]
Re-enter new administrator password: [재 입력]
New administrator password accepted.
>> User Access Control#apply/save [반드시 apply와 save를 해 줍니다.]
·약식 구성방법
>>main # cfg/sys/user/admpw
·telnet 기능 활성화 ( 반드시 콘솔로 접속을 하셔야 메뉴가 보입니다.)
>>main # cfg
>>configuration # sys
>>system # tnet en [telnet 서비스는 os 9.0에서 default disable이므로 활성화 시켜줌]
>>system # apply/save [반드시 apply와 save를 해 줍니다.]
·vlan 설정하기
>>main # cfg
>>configuration # vlan 2 [default로 모든 포트는 vlan 1에 할당되어 있다 ]
>>vlan 2 # add 1/add 2 [vlan 1에서 필요한 포트를 빼오는 형식]
C interface를 vlan 에 할당할때는 ip 설정하는 부분에서 해당하는 vlan을 지정해 주면됨
ex) >>main # cfg/ip/if 2/addr 192.168.1.1/vlan 2/en
ip를 설정하고 뒤에 해당 vlan 을 지정한다.
4. Server Load Balancing
· SLB 구성 로직
Real server : web 문서가 들어있는 서버들
Group : 동일한 서비스를 하는 서버들이 한 그룹에 포함되며, 로드발란싱 하는 기법
(least connection, roundrobin, hash. Etc)을 적용하는 단위이자 Health check
결정 하는 단위가 된다.
VIP : 리얼 서버 4대를 대표해주는 IP이며 외부 사용자들은 웹서버에 access할때 이 ip를
보고 들어오게 된다. 스위치는 이 ip를 real server의 ip로 변경하였다가 되돌린다.
가상의 대표ip를 설정하고 어떤 서비스를 하게 되는지를 결정하고 다시 서비스를 할
대상 그룹을 지정한다
· Real server 구성 command
>>main # cfg
>>configuration # slb [slb 메뉴로 들어감]
>>layer 4 # real 1 [real server 1번 지정]
>>real server 1#rip 192.168.1.3 [real server 의 ip를 설정할때는 rip address이다]
>>real server 1# en [ip설정후 enable를 해준다. ]
>>real server 1# . . [마침표 두번을 찍으면 상위 메뉴로 간다. ]
·약식 구성방법
>> main # c/sl/re 1/rip 192.168.1.3/en/../re 2/rip 192.168.1.4/en/ 방법으로 계속
·그룹 지정하기
>>Layer 4 # group 1
>>Real server group 1 # add 1/add 2/add 3/add 4 [Real server 들을 추가한다]
>>Real server group 1 # health [서버와의 health check 하는 기준 선택]
icmp|tcp|http|dns|pop3|smtp|nntp|ftp|imap|radius|sslh
중 하나를 선택할 수 있다.
>>Real server group 1 # metric [로드발란싱 기법 선택]
leastconns|roundrobin|minmisses|hash|response|bandwidth 중 하나를 선택
( metric에대한 설명은 맨 마지막장 참조)
·약식 구성방법
>>main # c/sl/gr 1/add 1/add 2/add 3/add 4/met round/heal http
>>Real server group 1# . . [상위 메뉴로]
>>Layer 4 # virt 1 [virtual IP설정 메뉴. VIP는 256개 까지 사용할 수 있다]
>>Virtual Server 1 # vip 192.168.1.10/en [virtual ip 를 설정하고 enable 하였다]
>>Virtual server 1 # service 80 [서비스 포트 지정]
>> Virtual Server 1 http Service# group 1 [서비스를 적용할 그룹 지정]
>> Virtual Server 1 http Service#../../ [상위 메뉴로 두번 올라간다.]
>> Layer 4 # on [SLB 전체를 활성화 시켜준다.]
>> Virtual Server 1 http Service# apply / save [저장하기]
· Service port 구성하기
>>Main # cfg
>>Configuration # slb
>>Layer 4 # port 1
>>SLB port 1 # client en [client traffic 이 들어오는 포트에 client enable를 해준다]
>>SLB port 1 # ..
>>Layer 4 # port 2
>>SLB port 2 # server en [server가 물려있는 포트에 server enable를 해준다]
>>SLB port 2 # apply/save
알테온은 client 가 들어오는 포트에 client 의 traffic이 들어오는 포트라는 지정을 해줘야
되고 server가 물려있는 포트는 서버가 있는 포트라는 server enable을 해줘야
정상적으로 서비스를 할수 있다 .
만약 어떤 사용자가 client enable가 되지 않은 다른 포트에 자신의 pc를 물려서
vip로 ping을 하면 ping이 되지 않는다.
· User define port 지정하기(ex, 8080, 8001, 12000.....)
user define port를 알테온에서 설정하는 방법은 3가지가 있다.
1. 사용자의 destination port 가 80 이고 실제 service port가 다를경우(ex.8001)
>> Main # cfg/slb/vi 1
>> Virtual Server 1# se 80 [ 사용자의 트래픽은 80이다]
>> Virtual Server 1 http Service # rport 8001 [real port 가 8001임을 지정한다]
Current real port: 80
New pending real port: 8001 [서비스 포트가 변경됨을 알려줌]
>> Virtual Server 1 http Service# gr 1 [서비스 하게될 리얼서버그룹 지정]
Current real server group: 1
New pending real server group: 1
>> Virtual Server 1 http Service# apply [apply해서 서비스를 활성화시켜준다]
2. 사용자의 destination port 가 실제 service port와 동일한경우
예를 들어 사용자가 http://www.cng.co.kr:8001 이라고 브라우저에 직접 치는 경우
>> Main # cfg/slb/vi 1
>> Virtual Server 1# se 8001 [ 사용자의 트래픽은 8001이다]
>> Virtual Server 1 8001 Service # gr 1 [서비스 하게될 리얼서버그룹 지정]
Current real server group: 1
New pending real server group: 1
>> Virtual Server 1 http Service# apply [apply해서 서비스를 활성화시켜준다]
3. 사용자의 destination port 가 80 이고 실제 service port가 다른 여러개인 경우
예를 들어 사용자는 실제 서비스 포트를 전혀 모르고 80으로만 쿼리를 보내고
실제 서버의 서비스는 8080, 8001, 12000을 사용한다고할경우 알테온은 사용자의
쿼리가 어떤 서비스를 요구하는지 전혀 알수 없다.
따라서 이런 경우 각각의 서비스에 대한 각각의 vip를 설정해야한다.
설정사항은 1번과 같다.
·Filter 설정하기
-Filter : 필터는 cisco router에서 나오는 access-list와 동일한것으로 보면된다.
단지 alteon에서는 allow, deny 외에 redirection 이라는 필터링 기법을 지원한다.
redirection은 특정한 트래픽을 강제로 지정한 방향으로 가도록 만들어주는 필터이다.
주로 cache redirection에 이용되며, WCR(web cache redirection), APR(application
Redirection) 에 쓰는 것이 보통이다.
filter는 1 부터 224 까지 쓸수 있으며 1이 가장 우선순위가 높다.
-설정하기
>>main # cfg
>>configuration # slb
>>layer 4 # fi 100 [filter 번호 지정, 100번부터 지정하는게 보통]
>>filter 100 # sip 192.168.1.1/smask 255.255.255.255/dip 10.10.10.1/dmask
255.255.255.255/pro tcp/dpo 80/act deny/en
>>layer 4 # port 1/add 100/fi en [slb port에 filter를 추가하고 filter enable를 해줌]
>>layer 4 # apply/save [apply/save는 필수]
source ip가 192.168.1.1인 host가 destination ip 10.10.10.1 destination 80port로
올경우 deny 시켜라는 filter.
filter 는 소스 트래픽이 들어오는 포트에 지정.
6. Firewall Load Balancing
· 개념
알테온의 주 기능중에 SLB가 있는데 이 SLB구성은 특정 서버의 IP를
기준으로 로드발란싱을 하는 것인데 Firewall Load Balancing 은 그 원리를 이용한
것이다.
즉, 알테온이 firewall반대편에 있는 알테온의 다른 두개의 Interface IP를 서버로드발란싱
하는 것처럼 Load balacing을 하여 그 경로상에 있는 firewall이 자동적으로 load
balacning 되도록 하는 것이다.
네트웍을 6개로 나누어서 하는게 보통이지만 다양한 네트웍으로 구성하여 사용할수 있다.
· 구성로직
둥근 점선 표시는 네트웍을 의미한다.
· 알테온에 구성되는 요소들
- swtich의 interface 3개 : 각 네트웍으로 통신을하기위해서 각 네트웍마다 하나의
ip address가 설정되어야한다. 네트웍이 3개라면 통신을 위한 interface가 3개 필요.
- gateway : default gateway 설정
- vlan : 각 네트웍을 vlan으로 나누어준다.
- static route : 로드발란싱될 다른 L4 switch의 다른 네트웍으로 가기위한
gateway 지정
- real server, group(metric hash) : 실제 load balancing되는 real serve는 반대편
L4 switch의 interface이다. slb 설정과 동일하게 group에 추가하고 metric값을
반드시 hash로 지정한다.
- filter : firewall 을 거쳐 firewall 안쪽 네트웍으로 들어가려는 트래픽을 강제로 그
네트웍쪽으로 뿌려주도록 만들어준다.
· switch 의 interface 설정하기
>>main # cfg/ip
>>ip # if 1/addr 192.168.1.1/mask 255.255.255.0/broad 192.168.1.255/vl 1/en
>>ip interface 1 # ..
>>ip # if 2/addr 192.168.2.1/mask 255.255.255.0/broad 192.168.2.255/vl 2/en
>>ip interface 2 # ..
>>ip # if 3/addr 192.168.3.1/mask 255.255.255.0/broad 192.168.3.255/vl 3/en
>>ip interface 3 # ..
· gateway 설정하기
>> ip # gw 1/addr 192.168.1.254/en
>> Default gateway 1 # apply
>> Default gateway 1 # /
· Vlan 설정하기
>> main # cfg/vlan 2
>> vlan 2 # add 5/add 6/en
>> vlan 2 # ..
>> configuration # vlan 3
>> vlan 3 # add 7/add 8/en
>> vlan 3 # /
· Static route 지정하기
>> main # cfg/ip
>> IP # route
>> <st1:Street>
Ip Static Route</st1:Street> # add
Enter destination IP address: 192.168.4.0
Enter destination subnet mask: 255.255.255.0
Enter gateway IP address: 192.168.2.254
Enter interface number: (1-256) 2
* 약식 : /c/ip/route/add 192.168.4.0 255.255.255.0 192.168.2.254 2
각각 필요한 라우팅 정보를 다 넣어준다. (필요한 내부 네트웍 등등)
>> <st1:Street>
Ip Static Route</st1:Street> # /
· SLB 설정하기
>> Main # cfg/slb
· Real server 설정하기
; real server는 firewall 이 아니라 firewall 반대편에 있는 switch 의 다른 두개의
interface이다.
>> Layer 4 # re 1
>> Real Server 1 # rip 192.168.4.1/en
>> Real Server 1 # ..
>> Layer 4 # re 2
>> Real Server 2 # rip 192.168.5.1/en
>> Real sever 2 # ..
· 그룹 설정하기
>> Layer 4 # gr 1
>> Real Server Group 1 # add 1/add 2/metric hash/heal icmp
>> Real Server Group 1 # ..
metric 값은 반드시 hash 로 설정해준다. 사용자의 트래픽이 특정 firewall을 거쳐
내부 네트웍에 있는 특정 서버에 접근했다가 다시 source로 돌아갈때 만약 처음
들어올때 지나갔던 firewall을 다시 거치지 않는다면 packet은 drop될것이다.
hash라는 알고리즘은 source IP와 destination IP를 연산하여 특정 라일을 타면
다음에도 계속 그 라인을 탈수 있도록 해준다.
· Filter 설정하기
>> Layer 4 # filter 100
>> Filter 100 # dip 192.168.6.0
>> Filter 100 # dmask 255.255.255.0
>> Filter 100 # action redir
>> Filter 100 # group 1
>> Filter 100 # en
내부 네트웍으로 가는 트래픽들을 아래쪽 switch로 강제 라우팅을 시키는 필터
>> Filter 100 # ..
>> Layer 4 # Filter 101
>> Filter 101 # dip 192.168.2.0
>> Filter 101 # dmask 255.255.255.0
>> Filter 101 # act allow
>> Filter 101 # en
>> Filter 101 # apply
>> Filter 101 # ..
>> Layer 4 # Filter 102
>> Filter 102 # dip 192.168.3.0
>> Filter 102 # dmask 255.255.255.0
>> Filter 102 # pro tcp [101번 filter와 102번 filter는 firewall을 manage
>> Filter 102 # act allow 할수 있도록 allow filter를 걸어준다. 만약 allow
>> Filter 102 # en filter가 없다면 firewall로 가려는 트래픽도 강제로
>> Filter 102 # apply 내부 네트웍으로 보내지게 될것이다. ]
>> Filter 102 # ..
· slb port 에 filter 추가하기
>> Layer 4 # po 1
>> SLB port 1 # add 100/add 101/add 102/filt en
>> <st1:place><st1:PlaceName>SLB</st1:PlaceName> <st1:PlaceType>Port</st1:PlaceType></st1:place> 1 # ..
filter는 사용자의 트래픽이 들어오는 포트에 설정한다.
위에서 만든 filter를 slb menu 아래에 있는 port에 추가하여주고 반드시 그 포트에서
fitler enable를 해주어야한다.
· SLB 활성화 하기
>> Layer 4 # on
>> Layer 4 # apply / save
모든 slb 설정이 끝나면 slb 를 활성화 시켜 주어야 하는데 on을 하면 활성화된다.
slb가 on 이 되고나면 진정한 layer 4 기능을 수행한다.
즉 slb가 off 되어 있다면 패킷의 header 정보를 까보지 않는다. 오로지 layer3 스위치
와 같은 역할 을 할 뿐이다.
slb가 on되고 나면 일일이 패킷을 까보면서 사용자 트래픽이 destination이 어디인지
source ip 는 무엇인지, 어떤 서비스를 원하는지 (service query)등등을 확인하여
적절한 방향으로 트래픽을 보내주게 된다.
7. Information
· 구성 정보보기
>>main # in
>>Information # li [각 양식의 맨 위 양식의 맨 아래 포트에 설정된 링크정보를 볼수
있다. ]
------------------------------------------------------------------
Port Speed Duplex Flow Ctrl Link
--- ----- -------- --TX-----RX-- ------
1 100 half no no up
2 1000 full yes yes down
3 1000 full yes yes down
4 1000 full yes yes down
5 1000 full yes yes down
6 1000 full yes yes down
7 1000 full yes yes down
8 1000 full yes yes down
9 1000 full yes yes down
>>Information # ip [switch에 설정된 interface 및 gateway 정보를 볼수 있다.]
>>Information # slb [구성된 SLB 정보를 볼수 있다. 만약 slb설정후 on을 하지 않았다면
정보는 보이지 않게 된다. ]
>> Server Load Balancing Information# sess/du [어떤 사용자가 어떤 서버에 접속했는지
알수 있다 ]
>> Server Load Balancing Information# du [전반적인 slb 구성 정보 보기]
8. Statistics
· 통계치 보기
>> main # st
>> Statistics # port 1 [port 1에 대한 통계치를 보기위해 1번을 선택]
>> Port Statistics # br [layer 2 의 정보보기]
>> Port Statistics # et [Ethernet 정보보기]
>> Port Statistics # if [interface 정보보기]
>> Port Statistics # cpu [각 포트마다 있는 cpu 부하율 확인하기]
>> main # st
>> Statistics # slb [slb관련 통계정보를 본다]
>> Server Load Balancing Statistics# gr 1 [그룹에 속해 있는 각 서버들에 대하여 current session , highest session, total session, octet 정보를 볼수 있다. ]
>> Server Load Balancing Statistics# port 1 [1번 포트에 물려 있는 서버들에 대한
위와 동일한 통계정보를 볼수 있음]
>> Server Load Balancing Statistics# vi 1 [vip 1번에 속해 있는 그룹의 서버들에대한
위와 동일한 통계정보를 볼수 있음]
>> Server Load Balancing Statistics# real 1 [지정한 서버에 대하여 위와 동일한 통계정보를 볼 수 있음]
9. Maint
· arp table 보기
>>main # ma
>>maintenance # arp
>>address resolution protocol # dump
>> Address Resolution Protocol# du
IP address Flags MAC address VLAN Port Referenced ports
--------------- ----- ----------------- ---- ---- ----------------
61.33.243.71 P 00:60:cf:43:e8:10 1 1-3 5-9
61.33.243.128 00:d0:59:2d:a9:b7 1 1 empty
61.33.243.254 00:d0:58:ad:4a:c3 1 1 empty
>> Address Resolution Protocol# clear [arp 지우기]
Loadbalancing Metric
least connection
현재 세션이 가장 적은쪽으로 세션을 보내줍니다. 현재 세션수를 고려하기 때문에 약간의 메모리자원을 소비합니다.default metric 이기때문에 제일 많이 사용되는 메트릭이고 일반적인 서버 로드발란싱의 경우에는 대부분 이 옵션을 많이 씁니다.
roundrobin
roundrobin은 리얼서버의 마지막 번호를 가진 서버로부터 출발하여 순차적으로 세션을 맺도록 해주는 로드밸런싱 기법입니다. 예를 들어 5대의 서버가 있다면.. 5, 4, 3, 2, 1, 1, 2, 3, 4, 5, 4, 3, 2, 1........ 위와같은 순서로 로드벨런싱 하게 됩니다. 특별한 서비스가 있지 않은 일반적인 웹사이트를 운영하는 곳에서 씁니다. leastconn 과 roundrobin은 관리자들의 요구에 따라 선택하며 가장 단순한 로드발란싱이므로 알테온에 거의 부하를 주지 않습니다.
minmiss
hash 와 비슷한 로드벨런싱 기법입니다. 국내에서는 거의 사용되지 않는걸로 알고 있습니다. hash와 minmiss는 알테온 자체에서 정해진 hashing algorithm을 적용시킵니다. 여기서 두가지 기법의 차이는 로드벨런싱이 이루어지다가 특정서버가 down됐을경우 이 서버와 세션을 맺고 있던 사용자들을 어떻게 처리할것인가하는 부분에 약간 차이가 있습니다.
hash
hash는 알테온 자체에서 제공하는 hashing algorithm을 사용하여 로드발란싱 하는 기법입니다. 정확한 메커니즘은 공개되지 않아 잘 모릅니다만 원리는 이렇습니다. source ip와 destination ip를 조합을 합니다. 예를 들어 192.168.1.1 이라는 source ip와 10.10.10.254 라는 destination ip가 있다고 할경우.. 그리고 source 가 사용자 이고 destination 이 vip 라고 하겠습니다. 그러면 이 두 아이피를 조합하여 어떤 수를 만들어 냅니다. 그래서 만약 끝자리 아이피.. 1 과 254를 조합하여 255라는 수를 만들어 냅니다. 이 수를 설정된 리얼 서버의 수로 나눔을 합니다. 만약 서버가 3대라면 나머지는 0 이 되겠지요. 그러면 리얼서버 1번으로 접속하게 됩니다. 만약 조합이 124이다.. 그러면 3으로 나눈 나머지는 1이 되죠.. 그러면 2번 리얼서버로 가라.. 라는 식입니다. 그러면 다음에 접속을 하더라도 vip와 client ip가 동일 하므로 나머지 값은 항상 동일 하게 되죠.. 그러면 항상 같은 서버로 접속하게 되는 것입니다.이런 경우는 보통 세션을 유지해야할 필요가 있는 사이트(인증, 보안 등등)에서 주로 사용합니다.
bandwidth based loadbalancing
bandwidth 로드발란싱은 말 그대로 알테온과 연결된 서버들과의 대역폭을 고려하여 로드발란싱 세션을 어떻게 보낼것인가를 결정하게 되는 그런 방식입니다. 로드발란싱 기법은 작년 10월즈음에 나왔습니다. 예를 들어 서버가 3대정도 있고 한대는 기가로 다른 두대는 10/100으로 물려있다고 할경우 기가 쪽으로 더욱 많은 트레픽을 보내게 됩니다.
아직 이 옵션을 사용하는 사이트는 많이 없습니다.
response time
response time 은 알테온이 서버와 통신을 하면서 그 응답시간에 대한 학습을 통하여 응답시간이 빠른 쪽으로 많은 세션을 보내주고 응답이 느린쪽으로세션을 적게 보내는 방식 입니다. 국내 유명 부동산 사이트에서 사용하고 있는 방식입니다. 이 사이트의 경우는 처음 leastconnection 방식을 사용하였습니다. 그런데 어느 순간 서버들이 행걸리는 경우가 발생하였다고 하는데 이유를 보니까 어떤 현상에 의해서 서버의 부하가 조금 올라갔고 그러면서 사용자 쿼리에 대한응답을 조금 느리게 해주게 되었고 그러다 보니까 세션이 줄어들게 되고 세션이 줄어들면 알테온은 또 세션을 보내게 됩니다. 그러면 또 서버의 부하가 늘어나고 이렇게 악순환이 되다보니 서버에 행이 걸린경우 였습니다. 그래서 응답시간으로 로드 발란싱 해 보니 응답이 바로 오지 않는곳으로는 트래픽을 보내지 않아서 서버가 안정화되었던 겁니다.
[TIP]
- L4 초기화 명령어 : forgetMe!
- 취소명령어 : revert
- IP설정시에는 mask값부터 입력 그러면 브로드캐스트값이 자동 입력됨
- SLB health check는 tcp
FLB health check는 icmp
- 서비스포트만큼 그룹을 생성해야 함. 동일그룹에 여러서비스포트 생성하지 말것
원작자를 찾아보려고 했는데;; 누군지 모르겠다...
l4를 처음하는 접하는 나에게 엄청 도움이 된 메뉴얼!!!
감사합니다....
'Networks' 카테고리의 다른 글
CCNA 시험 신청 방법 - 검색해도 학원 소개만 나오고..결국 내가 직접 해보고 설명 (2) | 2014.11.07 |
---|---|
피어슨뷰 코리아 전화번호 - 고객센터 전화걸기까지는 힘들지만 상담원은 친절하다 (0) | 2014.09.18 |
ccna vce 설치 및 덤프 PDF 변환 - ccna 덤프 pdf 첨부파일 (4) | 2014.09.17 |
ccna 시험변경 - ccna 덤프 변경!!! (0) | 2014.09.15 |
[WIPS]WIPS란 무엇인가 - 무선침입탐지시스템? (0) | 2014.09.11 |