Net works

  • Increase font size
  • Default font size
  • Decrease font size


E-mail Print
User Rating: / 22


Written by Maxim Klimanov


There are three leaders in the Russian market producing network attached storages intended for different application areas: Synology, Thecus and QNAP. ASUS company which is a famous manufacturer of components for PCs, laptops and network equipment recently began its promotion within this market. Its first test run - NAS-M25 and Home Server TS Mini – were presented in CeBit 2010 international exhibition. And now we pay attention of our readers to review and trial of the first one - ASUS NAS-M25. Let’s get started!

External design

ASUS NAS-M25 has a white plastic case with rounded corners and slightly projecting lower and upper decks. Geometrical parameters of the device are 210*128*105 mm. Upper and side panels are of nothing peculiar.

Manufacturer label, USB connector, ON/OFF button as well as USB-drive data copy button, device status and disks’ and network activity light indicators are located on the front panel. A front cover becomes a little bit loose in a while and we can notice some free-play by opening/closing. Of course, it doesn’t affect functioning of the device, but general impression gets worse.

The rear panel equips two USB-connectors and one power connector, Gigabit Ethernet port, and Reset sunk button used to reset user’s settings. It should be also mentioned that NAS-M25 has an external power adapter, applying +5 and +12 V voltage by 3 А current. The power adapter itself is equipped with standard IEC 320 C14 socket, allowing connection to UPS without any problems. A 40 mm fan for hard disks cooling is also located here. To our opinion, the fan of this size is a weak point, as it will cause noticeable noise increase in a while.

There are four white rubber legs for device installation on a table on the bottom side of the storage. Rack mounting of NAS-M25 without special shelves is not provided. Short description of the model is represented on a label in the central part of the bottom side. Here is also a latch allowing dismantling of a front panel of the device.

We finished a brief inspection of NAS-M25 from the outside, let’s look inside now.


ASUS NAS-M25 network attached storage is based on two dark boards made of dark textolite, and one of them is just an adapter for hard disk connection. Two connectors PCI-E are located on the main board and are used for connection.

Main elements on the second board are located from the one side. 1 GHz Marvell 88F6-B1A2 is used as a processing unit. It belongs to Feroceon series which is used very often even by competitors, e.g. QNAP and Synology. NAS-M25 is equipped with 128 MB of Samsung K9F1G08U0B-PCB0 flash-memory and 512 MB RAM - DDR2 (four Samsung chips K4T1G084QE 128 MB each). USB2.0 controller is a NEC chip 720114. Gigabit Ethernet controller functions are performed here by Marvell Alaska 88E1116R, and transformer functions – by Delta ( LFE9203.

We have finished examining hardware, let’s consider storage software features.

Firmware updating

The article had been already finished, when we received a new firmware version from the manufacturer, that’s why we decided to introduce simple procedure of firmware updating implemented by means of Firmware item in Maintenance group to our users. It is required just to specify the file with new system image and then to click an Apply button.

The whole updating procedure takes up not more than five minutes and differs from the similar processes for ASUS equipment just by the size of file with a firmware image; in our case it occupies 18.9 Mbyte.

The only thing we should remember is to reset user settings and to configure ASUS NAS-M25 again after firmware updating.

Web-interface review

ASUS NAS-M25 network attached storage has IP-address, which should be used for connection via any browser. Default login and password are admin and admin. Access to web-interface is allowed in English, Czech, German, French, Italian, Polish, Russian and Chinese.

The only buttons are available for users: Configuration Center and Twonky UPnP Server. An installation of additional packages extends NAS functionality. Let’s review features of every of them in brief.

Device operation parameters modification is performed by Configuration Center button. Menu located from the left side allows setting access.

Disk group contains Disk Status, Disk Configuration, Disk Utilities sub-items. Power Management is available in the Maintenance group. The first sub-item allows obtaining data regarding mounted hard disks and RAID parameters. Selection of the RAID and the file system type is performed in Disk Configuration sub-item. It is possible to determine here, if the device must automatically restore data in case of one hard disk fault in RAID1.

Scanning and reformatting of disks are available in Disk Utilities sub-item; and in Power Management sub-item it is possible to indicate inactivity period, when NAS-M25 would turn off hard disks for energy saving.

Server group contains the following sub-items: Samba Server, FTP Server, DHCP Server, NFS Server, iTunes Server and Printer Server, allowing configuring of corresponding services.


ASUS NAS-M25 enables operation with Jumbo-frames, their size is set in LAN section of Networks group. It is also possible to make the device receive IP-parameters automatically, or to set them manually.

The second Network Group item of the same group allows changing of NAS-M25 parameters for interaction with local group or Active Directory.

Account group sub-items provide controls of users, their groups, access rights and restrictions.

Maintenance group contains common routine features of time synchronization, saving/restoring/resetting of user’s settings, administrator password changing, upgrading, system overheating alert settings, etc.

The Information about system and hard drive temperature, drive status, IP-parameters, printer condition; as well as log data are collected in Status sub-item.

Except services available on default and controlled by Configuration Center item, ASUS NAS-M25 allows additional setting of bump pack in IPKG item. By the time the article was written only one phpMyAdmin extension could be set in automatic mode. To set packages automatically it is necessary to connect storage to the internet, select the required extension package and click on Install key.

If installation was successful, corresponding symbol will be displayed in the Status field.

If storage Internet access is denied, it is possible to install additional packages manually by selecting the corresponding file.

For the application we installed there appeared a new icon on the main page, which allows moving to phpMyAdmin settings. Studying all the features provided by package falls far beyond the scope of our article, that’s why we surely will not deepen into phpMyAdmin web-interface. We’ll just note that to get access to package parameters, we have to enter login and password, which are specified in the status file located in Volume_1\.ipkg-modules\tmp\ipkg\packages\ipkg catalogue, and are equal on default to root and phpMyAdmin, correspondingly.


The firmware includes bump packs for manual installation. Installation procedure itself is simple - you need just to specify the required file in Software Add-ins item of Maintenance group and click an Apply button.


One more not least interesting web-interface section is Download Master, which allows to start loading files via HTTP, FTP or BT protocols by means of web-interface itself, which is not applying additional software unlike previous ASUS products. By the moment when the article about NAS-M25 had been written, such software was even not available for users, and we don’t know, whether it will be available at all. We’ve installed a utility package (version 4089) for RT-N16 as an experiment and loaded Download Master from this package, as we had also ASUS RT-N16 connected to our test network at that moment. A discovery module, which is a part of DM, detected both devices. We connected to NAS-M25, though a manufacturer strongly recommend against it.


We successfully added downloading task via Download Master utility, set up on a test PC, and, passing on DM, integrated to web-interface, satisfied ourselves in existence and completion of preset downloading.


We’d like to mention also that the storage could be also detected in the network via Device Discovery program, which is a part of utilities developed for other network devices of ASUS company.


Herewith we finish our brief review of ASUS NAS-M25 web-interface and proceed to testing.

Command line interface

ASUS NAS-M25 doesn’t provide access to its settings via Telnet protocol, but there is just one shag – this kind of access is available for several minutes immediately after loading. This access is no more allowed either when there is activity via telnet protocol or without it. Login and password are not required when addressing to the storage. We think that this fact facilitate hacking for a probable intruder. Of course we tried to find out why the access via telnet protocol is interrupted. The problem has a simple explanation, during NAS-M25 loading product_test process with “short_terms_telnet 180” parameters is starting. In three minutes this process will kill telnet daemon. It is possible to detect PID of this process in ps command output. Then it is necessary to kill it by means of kill pid command to continue telnet-access.

# ps
    1 root      1948 S    init
    2 root         0 SW<  [kthreadd]
    3 root         0 SWN  [ksoftirqd/0]
    4 root         0 SW<  [events/0]
    5 root         0 SW<  [khelper]
   40 root         0 SW<  [kblockd/0]
   43 root         0 SW<  [khubd]
   57 root         0 SW   [crypto]
   58 root         0 SW   [crypto_ret]
   63 root         0 SW   [pdflush]
   64 root         0 SW   [pdflush]
   65 root         0 SW<  [kswapd0]
   66 root         0 SW<  [aio/0]
  221 root         0 SW<  [scsi_eh_0]
  222 root         0 SW<  [scsi_eh_1]
  241 root         0 SW<  [mtdblockd]
  296 root         0 SW<  [kcryptd/0]
  302 root         0 SWN  [jffs2_gcd_mtd4]
  313 root         0 SW<  [loop0]
  329 root      2332 S    xmldb -n config
  353 root      1504 S    dhcp_handler
  425 root         0 SW<  [kjournald]
  432 root         0 SW<  [md0_raid1]
  453 root      2356 S    polling_disks
  454 root      1960 S    polling_smart
  460 root     18828 S    logdb
  495 root      1680 S    fancontrold
  497 root      1508 S    ubutton
  503 root      1948 S    sh /var/run/
  513 root      1844 S    op_server -f lan1 -i 0 19 0
  536 root      7900 S    mathopd -f /var/tmp/httpd.cfg
  554 root      1940 S    matrixtunnel -A /etc/privkey.pem -p /etc/privkey.key
  564 root      1628 S    /usr/sbin/usbd -p 3 -n 3 -f 2
  621 root      2192 S    crond
  646 root     11436 S    smbd -D
  655 root     11436 S    smbd -D
  656 root      8276 S    nmbd -D
  664 root      1760 S    mDNSResponderPosix -b -f /etc/mdnsresponder.conf
  711 root      1952 R    telnetd -l /bin/ash
  717 root      2868 S    infosvr eth0
  718 root      2836 S    btnsetup
  719 root      1952 S    -/bin/sh
  721 root      1720 S    /web/TwonkyVision/twonkymedia -D -inifile /system/cfg
  722 root     28128 S    /web/TwonkyVision/twonkymediaserver -D -inifile /syst
1643 root 1560 S product_test short_terms_telnet 180
23941 root      1952 S    /bin/ash
23954 root      2024 R    ps

Let’s consider options of the storage command line in detail. As usually Busybox is installed in the system for ASUS network devices.

# busybox
BusyBox v1.12.3 (2010-08-25 07:08:55 CST) multi-call binary
Copyright (C) 1998-2008 Erik Andersen, Rob Landley, Denys Vlasenko
and others. Licensed under GPLv2.
See source distribution for full notice.
Usage: busybox [function] [arguments]...
   or: function [arguments]...
        BusyBox is a multi-call binary that combines many common Unix
        utilities into a single executable.  Most people will create a
        link to busybox for each function they wish to use and BusyBox
        will act like whatever it was invoked as!
Currently defined functions:
        arping, ash, awk, basename, brctl, cat, chgrp, chmod, chown, cp, crond, crontab, date, dd, depmod, df,
        dhcprelay, dmesg, du, dumpleases, echo, egrep, env, ether-wake, expr, false, fdisk, fgrep, find, free,
        fuser, grep, gunzip, gzip, halt, head, hostname, hwclock, id, ifconfig, init, insmod, kill, killall, killall5,
        linuxrc, ln, ls, lsmod, mkdir, mknod, mkswap, more, mount, mv, netstat, nice, nmeter, pidof, ping, poweroff,
        ps, pwd, rdate, rdev, reboot, renice, rm, rmdir, rmmod, route, sed, sh, sleep, swapoff, swapon, sync, tail,
        tar, taskset, tcpsvd, telnetd, top, touch, true, udhcpc, udhcpd, udpsvd, umount, uname, uptime, vi, wc,
        xargs, zcat

Let’s see what commands are available inside /bin, /sbin, /usr/bin and /usr/sbin catalogues. Vi editor and top to view active processes list are advantages. By means of vi editor now it is possible to edit text files in the storage.

# ls /bin
[                          egrep                      md5sum           
addgroup                   env                        mesg                       stty
adduser                    expr                       mkdir                      submit
arping                     false                      mknod                      swapoff
ash                        fdisk                      mkswap                     swapon
atp                        fgrep                      more                       sync
autoip                     find                       mount                      tail
awk                        flash_erase                mtd_debug                  tar
basename                   flash_eraseall             mv                         telnetd
busybox                    free                       nanddump                   test
cat                        fuser                      nandtest                   tinylogin   goweb                      nandwrite                  top
chgrp                      grep                       nice                       touch
chmod                      gunzip                     passwd                     transmission-daemon
chown                      gzip                       pidof                      transmission-remote
cmp                        head                       ping                       true           hostname                   ps                         tty
cp                                 pwd                        umount
crontab                    hwclock                    rdate                      uname
cut                        id                         renice                     usleep
date                       insmod               vi
delgroup                   kill                       rm                         wc
deluser                    killall                    rmdir                      xargs
df                         ln                         rmmod                      xgi
dmesg                      login              xmldb
du                         ls                         sed                        xmldbc
dualimg                    lsmod                      sh
dumpleases                 mathopd          
echo                       matrixtunnel               sleep
# ls /sbin
crond       getty       ifconfig    modprobe    reboot      udhcpc
dumpleases  hotplug     init        poweroff    route       udhcpd
# ls /usr/bin
ScanMedia          raid_delete          smartctl
UpdateDB_Daemon      gpasswd              nfs_service          raid_migrate         smb
UpdateDB_Daemon_I          nmbd                 raid_recover         smb_krb5_cfg_modify
UpdateMediaDB        infosvr              ntpdate              raid_reformat        smbclient
afpc                 inotify_Dir          openssl              raid_remove_disks    smbd
apkg                 inotify_USB          parted               raid_remove_mirror   smbpasswd
arpscan              inotify_iTune        phy_ctl              raid_restore         testusb
blkid                inotify_uPNP         polling_disks        raid_scandisk        twonky_conf
btnsetup             kinit                polling_smart        raid_update_info     ubutton
cpu_ctl           portmap              repquota             udhcpd_setting
devctl               logdb                 resize2fs            upnpc-static
dhcp_handler         logtest              powermgmt            rnl                  usb_esata_backup
disk_fail            lpd                  product_test         rpc.mountd 
dumpe2fs             mDNSResponderPosix   pure-ftpd            rpc.nfsd             version_check
e2fsck               mke2fs               quotacheck           rsync                wbinfo
email                ms_PathChk           quotaoff             rsync_conf           web_system
esata_pattern        msmtp                quotaon              samba                winbindd
esata_umount         mt-daapd             raid_add_disks       setquota
exportfs             mutt                 raid_append_mirror
ez-ipupdate          net                  raid_config          smart_update_db
fwUpdate                  raid_create          smart_update_info
# ls /usr/sbin
db_update     lpd_control   op_server     upscheck      usbd          usbdisk_out
ddns-start    lpq_control   test-lan      upsd          usbdisk_copy  zoneinfo
fancontrold   mdadm         upscan        upsdrvctl     usbdisk_in

Let’s proceed to the /proc catalogue and see what files are located here. Also let’s find out OS version, time of its operation and average workload and receive information about installed processor.

# pwd
# ls
1              426            57             773            driver         misc           sys
2              43             58             774            execdomains    modules        sysvipc
2031           433            63             775            filesystems    mounts         timer_list
221            454            64             777            fs             mtd            tty
222            455            648            880            interrupts     mv_xor         uptime
241            461            65             board_type     iomem          net            version
296            496            66             buddyinfo      ioports        partitions     vmstat
3              498            662            bus            irq            resource_dump  zoneinfo
302            5              689            cmdline        kallsyms       scsi
313            504            692            cpu            kmsg           self
329            513            699            cpuinfo        loadavg        slabinfo
354            537            707            crypto         locks          soc_type
4              548            758            devices        mdstat         stat
40             567            770            diskstats      meminfo        swaps
# cat version
Linux version ( This e-mail address is being protected from spambots. You need JavaScript enabled to view it ) (gcc version 4.2.1) #1 Mon Aug 16 12:10:49 CST 2010
# cat uptime
790.78 766.93
# cat loadavg
0.00 0.00 0.00 2/88 2279
# cat cpuinfo
Processor       : ARM926EJ-S rev 1 (v5l)
BogoMIPS        : 1196.03
Features        : swp half thumb fastmult edsp
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant     : 0x2
CPU part        : 0x131
CPU revision    : 1
Cache type      : write-back
Cache clean     : cp15 c7 ops
Cache lockdown  : format C
Cache format    : Harvard
I size          : 16384
I assoc         : 4
I line length   : 32
I sets          : 128
D size          : 16384
D assoc         : 4
D line length   : 32
D sets          : 128
Hardware        : Feroceon-KW
Revision        : 0000
Serial          : 0000000000000000

And finally we’d like to tell you about the control of LEDs located in NAS-M25 front panel. This information is absolutely useless, but could be practicable just for fun. Switching ON/OFF, as well as operation mode of every LED is controlled by cpu_ctl command.

# cpu_ctl
  cpu_ctl read #offset(hex)
  cpu_ctl write #offset(hex) #value(hex)
  cpu_ctl func_state
  cpu_ctl fan_state
  cpu_ctl fan_high
  cpu_ctl fan_low
  cpu_ctl fan_stop
  cpu_ctl udbg [0|1]
  cpu_ctl factor_state
  cpu_ctl get_temp
  cpu_ctl test_temper
  cpu_ctl power_ctrl
  cpu_ctl hdd0_led [0 | 1 | 2 | 3| 4] (Off | Green | Red | Blue | Red blink)
  cpu_ctl hdd1_led [0 | 1 | 2 | 3| 4]
  cpu_ctl usb_led  [0 | 1 | 2 ] (Off | On | blink)
  cpu_ctl ac_pwr_loss  [0 | 1] (Off | On)
  cpu_ctl pwr_led_blink  [0 | 1] (solid | blink)
  cpu_ctl usblp_status

Herewith we complete a brief review of command line interface features.


 Usually we start from determination of the device boot time. Under the boot time we understand the time interval between switching on power supply to the moment of first echo-response return via ICMP protocol. ASUS NAS-M25 boots in 49 seconds. In our opinion it is a very good result. Also we measured turnoff time (interval between issuing of turning off command to the storage power off). At the average NAS-M25 is turned off at 18 seconds.

The second test was checking of device security by means of Positive Technologies network security scanner XSpider 7.7 (Demo build 3100). Totally nine open ports were discovered: TCP-21 (FTP), TCP-80 (HTTP), UDP-137 (NetBIOS Name), TCP-139 (NetBIOS Samba), TCP-443 (HTTP SSL), TCP-445 (Microsoft DS), TCP-3306 (MySQL), TCP-8080 (HTTP) and TCP-9998. The most interesting discovered information is as follows.

 Examining potential of web-interface we drew our attention to the DHCP Server sub-item in Server menu. This sub-item allows performing dynamic host configuration of wired client in the network local segment. We decided to pay our attention to it and found out that sub-item under discussion has very few settings – range of given addresses and lease time. Default gateway and DNS servers can’t be configured here. Of course we decided to check what DHCP server of NAS-M25 offers. It appeared that computer receives settings of default gateway and DNS servers. But where does the storage take these parameters from?! Standard SOHO routers give IP-address of their LAN interface as default gateway and DNS server. But NAS-M25 can’t perform router’s functions because it doesn’t have second network interface or VLAN support at its physical GE-port. Also web-interface doesn’t have any indications of USB modems support. The decision turned out to be quite simple – the device takes addresses of default gateway and DNS servers from its own network settings (LAN sub-item of Networks menu).

Ethernet adapter Local Area Connection:
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Marvell Yukon 88E8001/8003/8010 PCI Gigabit Ethernet Controller
   Physical Address. . . . . . . . . : 00-1B-FC-E1-E2-FF
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes
   IP Address. . . . . . . . . . . . :
   Subnet Mask . . . . . . . . . . . :
   Lease Obtained. . . . . . . . . . : August 20, 2010 2:06:14 AM
   Lease Expires . . . . . . . . . . : August 20, 2010 3:06:14 AM
   Default Gateway . . . . . . . . . :
   DHCP Server . . . . . . . . . . . :
   DNS Servers . . . . . . . . . . . :
   NetBIOS over Tcpip. . . . . . . . : Enabled

If we examine output of ipconfig /all command we’ll see that DHCP client receives two addresses of default gateway and four addresses of DNS servers. This is twice bigger than indicated in LAN sub-item of Networks menu. Besides specified by the administrator address ASUS NAS-M25 also gives IP address for default gateway which according to the reference is most often used as default gateway address in local networks. It is a very amusing situation; unchangeable default gateway address doesn’t belong to the sub-network in which the storage interface is located because doesn’t belong to the sub-network So it never can be available for the local computers. The output of this parameter to the clients has no sense except the case when the user manually sets addresses to the storage from the range.

We deleted record on default about the default gateway from network settings and requested IP parameters once again. In this case the user receives only IP-address as a default gateway.

Ethernet adapter Local Area Connection:
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Marvell Yukon 88E8001/8003/8010 PCI Gigabit Ethernet Controller
   Physical Address. . . . . . . . . : 00-1B-FC-E1-E2-FF
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes
   IP Address. . . . . . . . . . . . :
   Subnet Mask . . . . . . . . . . . :
   Lease Obtained. . . . . . . . . . : August 20, 2010 2:06:14 AM
   Lease Expires . . . . . . . . . . : August 20, 2010 3:06:14 AM
   Default Gateway . . . . . . . . . :
   DHCP Server . . . . . . . . . . . :
   DNS Servers . . . . . . . . . . . :
   NetBIOS over Tcpip. . . . . . . . : Enabled 

 Also there is no clarity with the IP addresses which NAS-M25 offers to the DHCP-clients as DNS-servers ( and We addressed to the APNIC server Whois in order to determine belonging of these addresses. By the moment of this article creation both IP addresses under discussion were located in the Chunghwa Telecom Co., Ltd addressing space. Evidently ASUS trusts to this telecommunication company very much if it uses their external DNS servers.

Perhaps the most interesting part of this section is performance tests of network storage. We measured access rate to the folders via NetBIOS protocol by means of utility Intel NASPT 1.7.1 for all types of available RAIDs (Individual Disk, JBOD, RAID0 и RAID1) and both file-systems (ext2 and ext3). Besides we also measured access rate to the external USB-drive, data coping speed from USB devices to the hard disc, file transfer by means of AjaXplorer and via FTP protocol and operation speed of Download Master. Measurement results are indicated in the following diagrams.

We were surprised by data load performance via HTTP and FTP protocols by means of Download Master. We can’t make ourselves clear the purpose of these restrictions. Access rates via other protocols have lots megabytes per second.

Also we decided to check change of access rate at increasing of maximum packet size (turning on Jumbo-frames support). We made necessary changes in the storage and testing PC settings. Then we made sure that Jumbo-frames were being used, but there was no evident influence on data transfer rate.


As usual in the end of this section we make connection to multimedia service of server with UPnP support. In the ASUS NAS-M25 settings this service was switched on, and a folder with user’s multimedia files were selected.

We were surprised a little bit later when we tried to connect to the storage by means of Windows Media Center and Windows Media player. Both applications found available via UPnP multimedia device but failed to connect to it.


Of course we informed manufacturer about revealed problems and version of firmware is free from this error. ASUS NAS-M25 is detected as TwonkyServer [NAS-M25].

The testing is over let’s summarize it.


Generally we like this device more than dislike it. We think that ASUS attempt to approach the network storage market in SOHO segment was a success. But of course sale results and users will dot all the i's and cross all the t's. Still we can’t but indicate disadvantages.

  • Poor case design (front cover comes loose, hard disks are difficult to take out, small fan)…
  • Unpretentious functional of firmware, no software for PC.
  • Very low loading speeds by means of Download Master.
  • Errors in Russian web-interface.

Advantages of ASUS NAS-M25.

  • Proper for SOHO devices access rate to the stored information.
  • Possibility to diagnose installed hard disks.
  • Possibility to control access rate to the storage via FTP at 10 Kbyte/s step.
  • Robustness to network attacks.
  • Multilingual web-interface.

Unfortunately by the moment of article creation ASUS NAS-M25 hasn’t been sold neither in Russia nor in the world, though it can be found in the Road Map, so it is very early to speak about the price.

The author and editorial staff thank ASUS Moscow representative office for provided equipment for testing.