Bootp 란?
  • Bootp는 tcp/ip상에서 자동 부팅을 위한 최초의 표준으로, 디스크 장치가 없는 클라이언트를 구동시키기 위한 프로토콜로 개발되었다.
  • 하위 프로토콜로 udp와 ip 프로토콜을 사용한다.
  • 개발보드에서는 Tftp와함께, Bootloader에서 kernel과 파일시스템 Image를 Host PC에서 Target으로 다운로드 하기 위해 사용한다. Bootp는 Target 보드가 Tftp를 통한 파일 전송을 위해서 Target 보드의 IP와 Host에 대한 정보를 Host PC에서 가져오기 위해 사용한다.
bootpd 설치
bootpd를 사용하기 위해 먼저 xinetd가 설치 되어있어야한다. xinetd rpm이 설치되어 있지 않다면 설치 하도록 하자. xinetd설치 방법은 인터넷 검색을 해 보자. 쉽게 설치 할 수있다.
bootp는 CD의 모든 파일을 옮겨왔으므로 /home/embed/xhyper/RPM에 있다. rpm에 대해서는 검색을 통해 알아보길 바란다. 또한 RPM 설치를 위해서 root권한으로 접근해야 한다.
rpm에 의해 설치된 bootpd 파일은 /usr/sbin/에 위치한다. bootpd 파일은 xinetd 프로그램에 의해 실행된다. 그러므로 /etc/xinetd.d/bootp 파일을 만들어 줘야 한다. 아래 설정과 같이 bootp 파일을 만들자.
#su -l
Passwd:
#rpm -qa | grep xinetd
xinetd-2.3.10-6
#cd /home/embed/xhyper/RPM
#rpm -Uh bootp-2.4.3-7.i386.rpm
경고: bootp-2.4.3-7.i386.rpm: V3 RSA/MD5 signature: NOKEY, key ID cba29bf9
########################################### [100%]
########################################### [100%]
#cd /etc/xinetd.d/
#vi bootp
service bootps
{
   disable = no
   socket_type = dgram
   protocol = udp
   wait = yes
   user =root
   server = /usr/sbin/bootpd
}


bootptab 파일 설정
타겟보드의 bootp요청이 있을 때 Host PC에 설치 된 bootp서버는 /etc/bootptab에 정의된 Client 정보를 기반으로 bootp reply packet을 만들어 보낸다.
그래서 bootp를 사용하기 위해서는 이 /etc/bootptab에 client의 Mac Address와 할당할 IP등의 정보가 입력 되어 있어야 한다.

#vi /etc/bootptab
xhyper255:\
ht=1:\
ha=0x123456789ABC:\
ip=192.168.0.10:\
sm=255.255.255.0
xhyper -> hostname
ht(hardware type) -> 100Mb Ethernet 사용하므로 1
ha(hardware address) -> Bootp Request를 보낼 때 Target의 Mac Address
ip -> Target에 할당 할 IP Address
sm(subnet mask)

Bootloader에서 bootp 명령 실행
먼저 설정된 파일을 Host쪽 bootpd 데몬을 실행하자
#/etc/init.d/xinetd restart

Target Board의 Bootlarder에서 bootp 명령을 입력하면 Host PC로부터 타겟보드의 IP를 얻을 수있다. 이전에 cross lan cable이 연결되어 있어야 하며, serial 연결 한 다음 minicom을 통해 Bootloader를 볼 수 있어야 한다.

'X-Hyper255A' 카테고리의 다른 글

Tftp 설정  (0) 2006.08.10
개발 환경 구축에 대한 문제점  (0) 2006.08.10
JTAG Compile  (0) 2006.08.09
Toolchain Test  (0) 2006.08.09
Toolchain 설치  (0) 2006.08.08

+ Recent posts