| BBルータ解剖 |
|
| ASUS WL-500g |
|
パラレルポートを搭載して、プリンタサーバになるようですが、今のプリンタは ほとんど USB 対応なことを考えると、不要なのでは、と思ってしまいます。 WL-500g は USB1.1 ポートを装備していて、上位機種の WL-500g deluxe は USB 2.0 ポートを搭載しているようです。デザインは、個人的に好きなほうで、 立てて使うときに、本体横の内蔵しているスタンドを引き起こして使うのは、 便利だと思います。2005.1.24 |
| CPU と OS |
|---|
CPU は mips 系の CPU を搭載しているようです。調べてみましたら、前期の製品は Broadcom BCM4702 、後期の製品は Broadcom BCM4333 を使用しているようですが、 詳細はよくわかりません。 OS はファームウェアから、 Linux version 2.4.20 (root@localhost.localdomain) (gcc version 3.2.3 with Broadcom modifications) #88 Thu Aug 26 14:27:30 CST 2004 とあり、 Linux で動作しているようです。内部に miniPCI スロットがあり、 そこに Broadcom のチップが乗った無線 LAN カードが入っているようです。 |
| アップデートファームの取り出し |
|---|
| 確認ファーム Version : 1.8.1.9 |
ASUS のページからファームウェアをダウンロードしてきます。 今回は wg01080109_WL500g_EN.zip を使うことにしました。この wg01080109_WL500g_EN.zip を 解凍すると、 wg01080109_WL500g_EN.trx のファイルが取り出せます。この wg01080109_WL500g_EN.trx は前半部分が gzip で 圧縮されたkernel ファイル、後半が Compressed ROMFS(cramfs) のイメージファイル ですので、それを dd コマンドを使って取り出します。 dd if=wg01080109_WL500g_EN.trx of=piggy.gz bs=1 skip=28 count=790335 dd if=wg01080109_WL500g_EN.trx of=image bs=1 skip=790364 取り出した piggy.gz はそのまま gunzip などで解凍すると、 piggy というファイルが 取り出せます。このファイルは kernel ファイルですので、あとは strings コマンド などで眺めるぐらいしかできません。 もう一つのファイル image は cramfs ですので、 Linux の PC などでそのまま マウントが出来ます。 mount -o loop image /mnt/loop のような感じです。 image の tree 結果を以下につけます。
[toyota@kashyyyk]% tree
.
|-- bin
| |-- ash -> busybox
| |-- busybox
| |-- cat -> busybox
| |-- chmod -> busybox
| |-- cp -> busybox
| |-- date -> busybox
| |-- dd -> busybox
| |-- echo -> busybox
| |-- false -> busybox
| |-- grep -> busybox
| |-- kill -> busybox
| |-- ln -> busybox
| |-- ls -> busybox
| |-- mkdir -> busybox
| |-- mknod -> busybox
| |-- more -> busybox
| |-- mount -> busybox
| |-- msh -> busybox
| |-- mv -> busybox
| |-- ping -> busybox
| |-- ps -> busybox
| |-- pwd -> busybox
| |-- rm -> busybox
| |-- rmdir -> busybox
| |-- sh -> busybox
| |-- sleep -> busybox
| |-- true -> busybox
| `-- umount -> busybox
|-- dev
|-- etc
| |-- hosts -> /tmp/hosts
| |-- ld.so.cache
| |-- ld.so.conf
| |-- resolv.conf -> /tmp/resolv.conf
| `-- services
|-- lib
| |-- ld-uClibc.so.0
| |-- libc.so.0
| |-- libcrypt.so.0
| |-- libdl.so.0
| |-- libnsl.so.0
| |-- libpthread.so.0
| `-- modules
| `-- 2.4.20
| |-- build -> /root/broadcom/src/linux/linux
| |-- kernel
| | |-- drivers
| | | |-- i2c
| | | | `-- i2c-core.o
| | | |-- media
| | | | `-- video
| | | | `-- videodev.o
| | | |-- net
| | | | |-- et
| | | | | `-- et.o
| | | | |-- il
| | | | | `-- il.o
| | | | |-- robo
| | | | | `-- robo.o
| | | | `-- wl
| | | | `-- wl.o
| | | |-- scsi
| | | | |-- scsi_mod.o
| | | | |-- sd_mod.o
| | | | `-- sg.o
| | | `-- usb
| | | |-- host
| | | | |-- ehci-hcd.o
| | | | |-- uhci.o
| | | | |-- usb-ohci.o
| | | | `-- usb-uhci.o
| | | |-- printer.o
| | | |-- pwc.o
| | | |-- storage
| | | | `-- usb-storage.o
| | | `-- usbcore.o
| | `-- net
| | `-- ipv4
| | `-- netfilter
| | |-- ip_nat_starcraft.o
| | `-- ipt_NETMAP.o
| |-- ov511_decomp.o
| |-- ov518_decomp.o
| |-- ov51x.o
| |-- parport
| | |-- lp.o
| | |-- parport.o
| | `-- parport_splink.o
| `-- pcmcia
|-- mnt
|-- proc
|-- sbin
| |-- bpa_connect -> rc
| |-- bpa_disconnect -> rc
| |-- ddns_updated -> rc
| |-- erase -> rc
| |-- hb_connect -> rc
| |-- hb_disconnect -> rc
| |-- hotplug -> rc
| |-- ifconfig -> ../bin/busybox
| |-- init -> rc
| |-- insmod -> ../bin/busybox
| |-- klogd -> ../bin/busybox
| |-- logread -> ../bin/busybox
| |-- lsmod -> ../bin/busybox
| |-- ntp -> rc
| |-- rc
| |-- reboot -> ../bin/busybox
| |-- restore -> rc
| |-- rmmod -> ../bin/busybox
| |-- rmstorage -> rc
| |-- rmwebcam -> rc
| |-- sendalarm -> rc
| |-- start_ddns -> rc
| |-- stats -> rc
| |-- stopservice -> rc
| |-- syslogd -> ../bin/busybox
| |-- watchdog -> rc
| |-- wmac -> rc
| |-- write -> rc
| `-- wsrom -> rc
|-- tmp
|-- usr
| |-- bin
| | |-- basename -> ../../bin/busybox
| | |-- free -> ../../bin/busybox
| | |-- killall -> ../../bin/busybox
| | |-- route -> ../../bin/busybox
| | |-- traceroute -> ../../bin/busybox
| | |-- uudecode -> ../../bin/busybox
| | |-- uuencode -> ../../bin/busybox
| | `-- wget -> ../../bin/busybox
| |-- lib
| | |-- iptables
| | | |-- libipt_DNAT.so
| | | |-- libipt_LOG.so
| | | |-- libipt_MARK.so
| | | |-- libipt_MASQUERADE.so
| | | |-- libipt_NETMAP.so
| | | |-- libipt_POOL.so
| | | |-- libipt_SNAT.so
| | | |-- libipt_TCPMSS.so
| | | |-- libipt_TTL.so
| | | |-- libipt_autofw.so
| | | |-- libipt_icmp.so
| | | |-- libipt_iplimit.so
| | | |-- libipt_limit.so
| | | |-- libipt_mac.so
| | | |-- libipt_mark.so
| | | |-- libipt_mport.so
| | | |-- libipt_pool.so
| | | |-- libipt_standard.so
| | | |-- libipt_state.so
| | | |-- libipt_tcp.so
| | | |-- libipt_tcpmss.so
| | | |-- libipt_time.so
| | | `-- libipt_udp.so
| | |-- libnetconf.so
| | |-- libnvram.so
| | |-- libshared.so
| | `-- libsw.so
| |-- sbin
| | |-- bpalogin
| | |-- brctl
| | |-- dproxy
| | |-- epi_ttcp
| | |-- et
| | |-- ez-ipupdate
| | |-- httpd
| | |-- infosvr
| | |-- iptables
| | |-- iptables-restore
| | |-- lpd
| | |-- mini_sendmail
| | |-- nas
| | |-- nas4not -> nas
| | |-- ntpclient
| | |-- nvram
| | |-- pppd
| | |-- pppoe-relay
| | |-- pppoecd
| | |-- pptp
| | |-- rcamd
| | |-- stupid-ftpd
| | |-- test
| | |-- udhcpc -> udhcpd
| | |-- udhcpd
| | |-- upnp
| | |-- vconfig
| | |-- wl
| | `-- wlconf
| `-- tmp -> ../tmp
|-- var -> tmp/var
`-- www
|-- Advanced_ACL_Content.asp
|-- Advanced_APLAN_Content.asp
|-- Advanced_APWAN_Content.asp
|-- Advanced_Authentication_Content.asp
|-- Advanced_BasicFirewall_Content.asp
|-- Advanced_DDNS_Content.asp
|-- Advanced_DHCP_Content.asp
|-- Advanced_DMZDHCP_Content.asp
|-- Advanced_DMZDLFilter_Content.asp
|-- Advanced_DMZDWFilter_Content.asp
|-- Advanced_DMZIP_Content.asp
|-- Advanced_DMZLAN_Content.asp
|-- Advanced_DMZWAN_Content.asp
|-- Advanced_DynamicRoute_Content.asp
|-- Advanced_Exposed_Content.asp
|-- Advanced_FactoryDefault_Content.asp
|-- Advanced_FilterHelp_Widzard.asp
|-- Advanced_Firewall_Content.asp
|-- Advanced_FirmwareUpgrade_Content.asp
|-- Advanced_GRouterHelp_Widzard.asp
|-- Advanced_GWStaticRoute_Content.asp
|-- Advanced_Help_Widzard.asp
|-- Advanced_LANWAN_Content.asp
|-- Advanced_LANWAN_Content_JP.asp
|-- Advanced_LFirewall_Content.asp
|-- Advanced_MACFilter_Content.asp
|-- Advanced_MultiPPPoE_Content.asp
|-- Advanced_NAT_Content.asp
|-- Advanced_OperationMode_Content.asp
|-- Advanced_OperationMode_Content_501b.asp
|-- Advanced_Password_Content.asp
|-- Advanced_PortForwarding_Widzard.asp
|-- Advanced_PortMapping_Content.asp
|-- Advanced_PortTrigger_Content.asp
|-- Advanced_PrinterSetup_Content.asp
|-- Advanced_PrinterSetup_Widzard.asp
|-- Advanced_QOS_Content.asp
|-- Advanced_RDHCP_Content.asp
|-- Advanced_RLANWAN_Content.asp
|-- Advanced_RMISC_Content.asp
|-- Advanced_RemoteControl_Widzard.asp
|-- Advanced_RouteStatus_Content.asp
|-- Advanced_RouterHelp_Widzard.asp
|-- Advanced_SettingBackup_Content.asp
|-- Advanced_ShowTime_Widzard.asp
|-- Advanced_StaticRoute_Content.asp
|-- Advanced_StorageRight_Content.asp
|-- Advanced_StorageTool_Content.asp
|-- Advanced_StorageUser_Content.asp
|-- Advanced_URLFilter_Content.asp
|-- Advanced_USBStorage_Content.asp
|-- Advanced_UniqueKey_Content.asp
|-- Advanced_VirtualServer_Content.asp
|-- Advanced_VirtualServer_Widzard.asp
|-- Advanced_WAdvanced_Content.asp
|-- Advanced_WAdvanced_Content_500g.asp
|-- Advanced_WAdvanced_Content_501b.asp
|-- Advanced_WCertificate_Content.asp
|-- Advanced_WClientMore_Content.asp
|-- Advanced_WClient_Content.asp
|-- Advanced_WMode_Content.asp
|-- Advanced_WMode_Content_501b.asp
|-- Advanced_WSecurity_Content.asp
|-- Advanced_WebCam_Content.asp
|-- Advanced_Wireless_Content.asp
|-- Basic_AOperation_Content.asp
|-- Basic_AccessPoint_SaveRestart.asp
|-- Basic_GOperation_Content.asp
|-- Basic_HomeGateway_SaveRestart.asp
|-- Basic_Operation_Content.asp
|-- Basic_ROperation_Content.asp
|-- Basic_Router_SaveRestart.asp
|-- Checking.asp
|-- EMITest.asp
|-- Logout.asp
|-- Main_AStatus_Content.asp
|-- Main_AdmStatus_Content.asp
|-- Main_Content.asp
|-- Main_DHCPStatus_Content.asp
|-- Main_FWStatus_Content.asp
|-- Main_GStatus_Content.asp
|-- Main_IPTStatus_Content.asp
|-- Main_Index.asp
|-- Main_Index_AccessPoint.asp
|-- Main_Index_Content.asp
|-- Main_Index_HomeGateway.asp
|-- Main_Index_Router.asp
|-- Main_List.asp
|-- Main_LogStatus_Content.asp
|-- Main_Operation.asp
|-- Main_Password_Content.asp
|-- Main_RStatus_Content.asp
|-- Main_Status_Content.asp
|-- Main_WStatus_Content.asp
|-- Restarting.asp
|-- SaveRestart.asp
|-- ShowWebCam.asp
|-- ShowWebCamPic.asp
|-- Title.asp
|-- UpdateError.asp
|-- Updating.asp
|-- UploadError.asp
|-- Uploading.asp
|-- WL300g.CFG -> /tmp/settings
|-- WL500b.CFG -> /tmp/settings
|-- WL500g.CFG -> /tmp/settings
|-- WL500gx.CFG -> /tmp/settings
|-- WL520g.CFG -> /tmp/settings
|-- WL530g.CFG -> /tmp/settings
|-- WizardDetect.asp
|-- WizardFirst.asp
|-- display.jpg -> /var/tmp/display.jpg
|-- firmware.asp
|-- general.js
|-- general_501b.js
|-- graph
| |-- !.gif
| |-- AP.gif
| |-- Connecting.gif
| |-- Corner.gif
| |-- Disconnect.gif
| |-- Firewall.gif
| |-- List_backgroup.gif
| |-- Notebook.gif
| |-- PC.gif
| |-- Upload.gif
| |-- Upload_BAD.gif
| |-- Upload_OK.gif
| |-- V.gif
| |-- apicon.gif
| |-- apply.gif
| |-- asusLogo.jpg
| |-- asusLogoA.jpg
| |-- asusLogoG.jpg
| |-- asusLogoR.jpg
| |-- blank.gif
| |-- closedfolder.gif
| |-- delthisentry.gif
| |-- doc.gif
| |-- firewall1.gif
| |-- firewall2.gif
| |-- firewall3.gif
| |-- gatewayLogo.gif
| |-- help.gif
| |-- iBox.gif
| |-- iBox_title_all.jpg
| |-- internet.gif
| |-- internet_all.gif
| |-- internet_none.gif
| |-- internet_some.gif
| |-- lastnode.gif
| |-- many.gif
| |-- node.gif
| |-- openfolder.gif
| |-- pixel.gif
| |-- restore.gif
| |-- sArrow.gif
| |-- save.gif
| |-- showroutingtable.gif
| |-- start.gif
| |-- sumhorsd.gif
| |-- sumtextb.jpg
| |-- vertline.gif
| |-- wds_ap.gif
| |-- wds_mixed_anony.gif
| |-- wds_mixed_both.gif
| |-- wds_mixed_connect.gif
| |-- wds_wds_anony.gif
| |-- wds_wds_both.gif
| |-- wds_wds_connect.gif
| |-- wf_g.gif
| |-- wf_none.gif
| `-- x.gif
|-- index.asp
|-- index_501b.asp
|-- index_JP.asp
|-- md5.js
|-- netcam_mfc_activeX.cab
|-- overlib.js
|-- phrase.js
|-- quick.js
|-- quick_501b.js
|-- redirect.asp
|-- redirecting.asp
`-- style.css
37 directories, 343 files
Linux 周りなどは、ASUS のサイトから、ソースがダウンロードできます。 かなり大きいファイルですが、解析してみると面白いかもしれません。 |
|
|