少ないFlashメモリーでIOSを動かす
ルーター起動時にTFTPサーバーからIOSをダウンロードする

高機能なIOSは容量が大きい!
オークションでルーターを購入したときによくあるのが,「Flashメモリーの容量が少なくて目的のIOSが入らない!」ということ。
特に最新のIOSはサイズが大きいので,IOSを格納しておくFlashメモリーの容量が必要です。
でも,DRAMに比べてFlashの価格は高くて,入手しにくいのが悩みどころ。
そこで便利なのが,ルーター起動時にTFTPサーバーからIOSを読み込む方法です。
Flashを使わずに直接DRAMにIOSを展開するため,Flashの容量が小さくてもいいわけです。
Flashメモリーが小さいルーターに大きなサイズのIOSを入れるとどうなる?
Flashメモリーが少ないルーターに,IOSサイズが大きいルーターを無理やり入れるとどうなるでしょうか。
以下は,Cisco2600で,32MバイトのFlashメモリーに,31.7MバイトのIOS(c2600-adventerprisek9_ivs-mz.124-11.T.bin)を入れようとしたときの例です。
31.7Mバイトは32Mバイトぎりぎり入っているので,入るような気がしますが,入りません。

Router#
copy tftp flash:
Address or name of remote host []?
192.168.0.125
Source filename []?
c2600-adventerprisek9_ivs-mz.124-11.T.bin
Destination filename [c2600-adventerprisek9_ivs-mz.124-11.T.bin]?
Accessing tftp://192.168.0.125/c2600-adventerprisek9_ivs-mz.124-11.T.bin...
Erase flash: before copying? [confirm]
Erasing the flash filesystem will remove all files! Continue? [confirm]
Erasing device... eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ...erased
Erase of flash: complete
Loading c2600-adventerprisek9_ivs-mz.124-11.T.bin from 192.168.0.125 (via FastEthernet0/0): !
%Error copying tftp://192.168.0.125/c2600-adventerprisek9_ivs-mz.124-11.T.bin (Not enough space on device)

「eeeeee…」で既存のIOSを消した後に,「機器に十分なスペースがない」というエラー表示が出ているのがわかります。
起動時にTFTPサーバーからIOSを読み込む
Flashを介さずに,TFTPサーバーからDRAMに直接IOSをインストールしていまいましょう。
DRAMの容量は,IOSイメージの2〜3倍くらいの容量があればOKです。

まず,TFTPサーバーを用意して,起動しておきます。

そしてルーターには,boot systemコマンドを入力して,起動時にTFTPサーバーを参照しに行くようにします。
具体的には,「boot system tftp IOSイメージ名 TFTPサーバーのIPアドレス」と入力します。

Router(config)#boot system tftp c2600-adventerprisek9_ivs-mz.124-11.T.bin 192.168.0.125

次に,ルーターのインタフェースをTFTPサーバーと同じサブネットに指定し,このインタフェースとTFTPサーバーをケーブルでつないでおきます。

Router(config)#interface fastEthernet 0/0
Router(config-if)#
ip address 192.168.0.1 255.255.255.0

ルーターの設定を保存して,再起動します。

Router#
copy running-config startup-config ←設定を保存
Destination filename [startup-config]?
Warning: Attempting to overwrite an NVRAM configuration previously written
by a different version of the system image.
Overwrite the previous NVRAM configuration?[confirm]
Building configuration...
[OK]
Router#
reload ←ルーターを再起動
Proceed with reload? [confirm]

*Mar 1 00:08:15.023: %SYS-5-RELOAD: Reload requested by console. Reload Reason:
Reload Command.
System Bootstrap, Version 12.2(8r) [cmong 8r], RELEASE SOFTWARE (fc1)
Copyright (c) 2003 by cisco Systems, Inc.
C2600 platform with 262144 Kbytes of main memory

program load complete, entry point: 0x80008000, size: 0x9d6294
Self decompressing the image : #####################################################
#################################################################################
############################################################## [OK]

Smart Init is enabled
smart init is sizing iomem
ID MEMORY_REQ TYPE
00036D 0X0010A400 C2621XM Dual Fast Ethernet
000024 0X00019A40 Four port Async/Sync
0X000F3BB0 public buffer pools
0X00211000 public particle pools
TOTAL: 0X004289F0

If any of the above Memory Requirements are
"UNKNOWN", you may be using an unsupported
configuration or there is a software problem and
system operation may be compromised.
Rounded IOMEM up to: 5Mb.
Using 3 percent iomem. [5Mb/128Mb]
                                 
   ↓TFTPサーバーからIOSをダウンロード中
Loading c2600-adventerprisek9_ivs-mz.124-11.T.bin from 192.168.0.125 (via FastEthernet0/0): !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
(途中略)
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[OK - 33278596 bytes]
program load complete, entry point: 0x80008000, size: 0x1fbc90c 
↓ダウンロードしたIOSを解凍中
Self decompressing the image : #################################################
################################################################################
################################################################################
################################################################################
################################################################################
################################################################################
################################################################################
###### [OK]

(途中略)

Cisco 2621XM (MPC860P) processor (revision 3.1) with 253952K/8192K bytes of memory.
Processor board ID JAE0824LGUK
M860 processor: part number 5, mask 2
2 FastEthernet interfaces
2 Serial interfaces
4 Low-speed serial(sync/async) interfaces
32K bytes of NVRAM.
32768K bytes of processor board System flash (Read/Write)

Press RETURN to get started! 
←無事に起動した

無事に起動しました。
読み込まれたIOSをshow versionコマンドで確認すると,確かに目的のIOS(c2600-adventerprisek9_ivs-mz.124-11.T.bin)で起動していることがわかります。

Router#
show version
Cisco IOS Software, C2600 Software (C2600-ADVENTERPRISEK9_IVS-M), Version 12.4(1
1)T, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2006 by Cisco Systems, Inc.
Compiled Sat 18-Nov-06 16:29 by prod_rel_team

ROM: System Bootstrap, Version 12.2(8r) [cmong 8r], RELEASE SOFTWARE (fc1)
ROM: C2600 Software (C2600-IS-M), Version 12.2(32), RELEASE SOFTWARE (fc1)

Router uptime is 45 minutes
System returned to ROM by power-on          
↓TFTPサーバーから読み込んだIOS
System image file is "tftp://192.168.0.125/c2600-adventerprisek9_ivs-mz.124-11.T.bin"



This product contains cryptographic features and is subject to United
States and local country laws governing import, export, transfer and
use. Delivery of Cisco cryptographic products does not imply
third-party authority to import, export, distribute or use encryption.
Importers, exporters, distributors and users are responsible for
compliance with U.S. and local country laws. By using this product you
agree to comply with applicable laws and regulations. If you are unable
to comply with U.S. and local laws, return this product immediately.

A summary of U.S. laws governing Cisco cryptographic products may be found at:
http://www.cisco.com/wwl/export/crypto/tool/stqrg.html

If you require further assistance please contact us by sending email to
export@cisco.com.

Cisco 2621XM (MPC860P) processor (revision 3.1) with 253952K/8192K bytes of memo
ry.
Processor board ID JAE0824LGUK
M860 processor: part number 5, mask 2
2 FastEthernet interfaces
2 Serial interfaces
4 Low-speed serial(sync/async) interfaces
32K bytes of NVRAM.
32768K bytes of processor board System flash (Read/Write)

Configuration register is 0x2102

これでこのルーターは,次回以降,起動時にTFTPサーバーからIOSをダウンロードするようになります。
Flashメモリーの容量が足りなくても,目的のIOSでルーターを起動できるわけです。