본문 바로가기

Software Defined Network/Research_SDN

Buffalo AP - OpenFlow SW 설정

OpenWRT를 활용한 OF SW 설정


OpenFlow 및 SDN 분야를 연구하면서 가장 많이 듣는 질문 중 하나가 '그냥 SDN 컨트롤러만 적용하면 SDN을 활용할 수 있습니까?' 하는 질문이다.


대답만 먼저 하자면 '아니요'이다.


급변하는 네트워크 세상에서 살아남으려면 이른바 '최신' 유식한 단어를 빌리자면 '첨단' 기술에 빠르게 대응해야 한다.


최근 IT의 트렌드가 'Open'이다보니 네트워크에도 이런 개념이 녹아들어가게 되었다.


'SDN은 Software Defined Networking 인데... 이걸 사용하면 좋긴 하다고 하는데...'라는 막연한 생각을 가지고 접근하는 경우가 태반이긴 하지만...


어찌되었건 SDN의 근간을 이루는 네트워크는 OpenFlow 네트워크 이다.


즉, OpenFlow 프로토콜을 지원하는 SW들로 구성된 네트워크 이며 이러한 네트워크를 SDN 컨트롤러를 사용하여 중앙집중형으로 제어하는 것이다.


쉽게 말하면 SDN의 장점이라고 불리는 네트워크 제어를 하기 위해서는 서로 약속된 신호를 약속된 통로로 주고받게 되는데 이러한 신호 및 통로를 OpenFlow라고 한다.


그런데... OpenFlow SW를 구매하려면 우선 어마어마한 가격에 놀라고 만다.


물론 CISCO 계열의 Router/SW 시스템 보다는 싸겠지만... 그래도... 소위 '개방' 또는 'Open' 을 생각하면 아이러니 하기도 하다.


그럼 방법이 없느냐?


아니다 많은 방법이 존재한다.


대표적으로 일반 PC 또는 오래된 서버에 네트워크 카드를 여러장 사용하고 여기에 OpenvSwitch를 설치하여 동작하는 방법이다.


즉, PC 또는 서버에서 동작하는 OpenvSwitch가 OF SW 역할을 담당하는 것이다.


또 하나의 방법은 시중에서 20~30만원으로 구매할 수 있는 Buffalo AP를 구매하고 OpenvSwitch를 설치하는 방법이다.


Buffalo AP는 OpenWRT AP로서 텅 비어있는 AP에 Software를 인스톨할 수 있는 AP라고 생각하면 된다.


OpenWRT에 OpenFlow를 인스톨하는 방법은 구글에 많이 소개되어 있다.


본 포스팅에서는 인스톨 이후 설정하는 방법에 대하여 이야기 하고자 한다.



Buffalo AP Setting



기본적으로 인스톨 할 때 IP를 설정하게 되지만 IP를 바꿀 수 있다.


OpenFlow Switch는 IP를 가지고 있기 때문에 IP 설정은 물론이거니와 IP 교체도 가능하다.


그 전에 다음과 같은 준비물이 필요하다.

    • Buffalo AP : OpenvSwitch 가 인스톨 된 상태
    • 노트북 또는 PC : Buffalo AP에 접속을 할 수 있어야 함
      • Putty 설치
      • IP는 Buffalo AP에 설정한 서브네트워크 대역
    • 랜선 : Buffalo AP의 파란색 제외한 포트와 IP를 수정한 노트북 또는 AP와 연결

1. 기본 설정 확인 및 인터페이스 설정

1-1. 웹페이지를 통한 설정 확인
    • GUI를 통한 확인
      • URL: Buffalo AP IP (포스팅 예, 192.168.1.1)
      • account: Buffalo AP 설정시 적용한 계정 (포스팅 예, root/sdn1234)

    • SSH 접속 허용
      • System > Administrator의 Router Password 적용
      • Save & Apply

    • OpenFlow 확인 및 Controller 적용
      • Openflow > Openflow-Switch의 Controller 적용

    • Interface 정보
      • Network > Interfaces
        • WAN IP 생성
          • OFSW는 IP를 가지고 있기 때문에 OFSW의 IP를 설정
          • OFSW들 간의 IP는 서로 달라야 함 (같은 서브넷 사용)
          • WAN으로 보이는 부분의 "Edit" 버튼 선택
    • Firewall 설정
      • Network > Firewall
        • WEB 접근이 가능하도록 Firewall 설정
          • WAN zone의 Input, Output accept



    • 변경한 WAN IP주소로 UI 재접속

    • Interface 추가
      • Network > Interfaces > Add new interface


      • 인터페이스 추가
        • Name of the new interface : <원하는 인터페이스 명, 본 예제에서는 LAN_00, LAN_01, LAN_02, LAN_03, LAN_04 로 생성>

        • Custom Interface : <추후 ovs-vsctl로 생성할 포트 명, 본 예제에서는 eth0.1, eth0.2, eth0.3, eth0.4로 생성>

        • 생성된 인터페이스 확인


  • 추가한 Interface의 VLAN 설정
    • Network > Switch



1-2. OVS CLI 메시지를 통한 설정 확인
    • Putty를 통한 확인
      • IP : Buffalo AP IP (포스팅 예, 192.168.1.1)
      • account: Buffalo AP 설정시 적용한 계정 (포스팅 예, root/sdn1234)



    • 현재 상태 확인
      • ovs command
# ovs-vsctl show



    • ovs-vsctl을 활용한 인터페이스 추가
# ovs-vsctl add-br br0
ovs-vsctl add-port br0 eth0.1
ovs-vsctl add-port br0 eth0.2
ovs-vsctl add-port br0 eth0.3
ovs-vsctl add-port br0 eth0.4


      • CLI 확인
# ovs-vsctl show



    • SDN Controller 추가
ovs-vsctl set-controller br0 tcp:<controller IP>:6633



      • CLI 확인
# ovs-vsctl show



    • OVS Secure 모드 설정
# ovs-vsctl set-fail-mode <br0> secure


2. SDN Controller 연동

2-1. 연동 확인
    • 네트워크 구성
OpenFlow SW를 서로 연결하고 SDN Controller와 연동한다.

Buffalo AP에는 4개의 인터페이스가 존재한다.

본 포스팅에서는 Buffalo AP가 4개를 사용한 OF 네트워크 구성이다.

이런 인터페이스를 다음과 같이 연결해보자.

Buffalo AP 4개는 SDN Controller와 연결이 되어야 하기 때문에 일반 허브 또는 스위치를 활용하여 SDN Controller와 연결한다.
(6개 이상의 포트를 가진 조그마한 허브가 각각의 Buffalo AP의 푸른색 인터페이스와 연결되고 SDN Controller와 연결된다.)

주의할 점은 SDN Controller의 IP는 위에서 ovs-vsctl set-controller시 설정한 IP가 되어야 한다.




이제 Controller를 실행시키고 토폴로지를 확인하면 된다.


'Software Defined Network > Research_SDN' 카테고리의 다른 글

Yang Model as a Service  (2) 2016.08.02
openvSwitch에서 OpenFlow 룰을 확인하고 싶을때  (1) 2016.04.14
ONOS Controller와 OpenStack 연결  (0) 2015.10.08
ONOS prolog  (0) 2015.07.20