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 のサイトから、ソースがダウンロードできます。 かなり大きいファイルですが、解析してみると面白いかもしれません。 |
|