body start
Chmac Project
This site is not compatible with IE 6.0/7.0
1 Introduction
This project is aim to make the system software which can change MAC address of wifi(eth0) on the fly.
It takes two steps:
- linux command line software of chmac.
- JNI co-working JAVA application software of chmac.
2 Cautions
YOU are all responsible about using this project/code/binary illegally.
3 Step1 User Manual : commandline chmac
- Download chmac from this page. (http://dev.odroid.com/projects/chmac/download)
- Connect your Odroid to your PC via USB
- Follow commands on a command prompt window in the PC.
D:\>adb root
* daemon not running. starting it now *
* daemon started successfully *
adbd is already running as root
D:\>adb push chmac /system/xbin/
11 KB/s (5500 bytes in 0.484s)
D:\>adb shell chmod 777 /system/xbin/chmac
D:\>adb shell chmac
00:99:88:77:66:55:
Usage:
chmac XX:XX:XX:XX:XX:XX
* This program changes MAC address of eth0.
D:\>adb shell netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
tunl0 DOWN 0.0.0.0 0.0.0.0 0x00000080
gre0 DOWN 0.0.0.0 0.0.0.0 0x00000080
eth0 UP 192.168.0.29 255.255.255.0 0x00001043
D:\>adb shell chmac 00:11:22:33:44:55
D:\>adb shell chmac
00:11:22:33:44:55:
Usage:
chmac XX:XX:XX:XX:XX:XX
* This program changes MAC address of eth0.
D:\>adb shell netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
tunl0 DOWN 0.0.0.0 0.0.0.0 0x00000080
gre0 DOWN 0.0.0.0 0.0.0.0 0x00000080
eth0 UP 192.168.0.29 255.255.255.0 0x00001043
D:\>adb shell ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
From 192.168.0.29 icmp_seq=1 Destination Host Unreachable
From 192.168.0.29 icmp_seq=2 Destination Host Unreachable
From 192.168.0.29 icmp_seq=3 Destination Host Unreachable
64 bytes from 192.168.0.1: icmp_seq=4 ttl=64 time=2007 ms
64 bytes from 192.168.0.1: icmp_seq=5 ttl=64 time=996 ms
64 bytes from 192.168.0.1: icmp_seq=6 ttl=64 time=2.33 ms
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
64 bytes from 192.168.0.1: icmp_seq=12 ttl=64 time=9.49 ms
64 bytes from 192.168.0.1: icmp_seq=13 ttl=64 time=2.62 ms
64 bytes from 192.168.0.1: icmp_seq=14 ttl=64 time=2.19 ms
64 bytes from 192.168.0.1: icmp_seq=15 ttl=64 time=2.30 ms
64 bytes from 192.168.0.1: icmp_seq=16 ttl=64 time=2.39 ms
^C
D:\>
After you set mac address using chmac, the network interface will be
disconnected for short time and will be connected again soon.
4 Step1 User Manual : commandline suo
- commandline chmac require root account. however, normally, we are not root. Therefore, we modified "su" for a non root user. The name is "suo" which means "su" for Odroid.
- Download suo from this page. (http://dev.odroid.com/projects/chmac/download)
- Connect your Odroid to your PC via USB
- Follow commands on a command prompt window in the PC to install
D:\>adb root * daemon not running. starting it now * * daemon started successfully * adbd is already running as root D:\>adb push suo /system/xbin/suo 2255 KB/s (72168 bytes in 0.031s) D:\>adb shell chmod 6777 /system/xbin/suo D:\>
- "chmod 6777" makes suo to become a root at execution time.
- Now, let us test suo as following.
D:\>adb shell # su 2999 su 2999 $ ping 192.168.0.1 ping 192.168.0.1 ping: icmp open socket: Operation not permitted $ su su su: uid 2999 not allowed to su $ suo 0 suo 0 # # ping 192.168.0.1 ping 192.168.0.1 PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data. 64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=5.99 ms 64 bytes from 192.168.0.1: icmp_seq=2 ttl=64 time=2.41 ms
- Prompt # stands for "root" while prompt $ stands for "normal user".
- The first command "su 2999" means it makes the current user to a normal user (uid=2999 for example).
- As shown, original su does not allow to change a normal user to root user.
- However, our suo can do it.
- The following screen shot shows an example of suo usage with ConnectBot in Odriod.

- basically, "ping" can be worked for root. In this example, suo makes ping work for Android application process.
- Now, use can change MAC address on ConnectBot. Type the following line in ConnectBot's local screen.
chmac 00:11:22:33:44:55
5 Step2 User Manual
TBD
6 How to be a developer for this project
If you want to join this project, please email me(softgear at paran.com) your id.
Or, leave a message on the board with the following information.
Title: Want to be a member. ID: (Your login ID) Description: Brief introductionAfter the registration process, you can commit source (svn access) and modify Wiki pages.
7 Question / Bug Report
- If you have any question about this project,binary, or code, Use the forum(게시판)
http://dev.odroid.com/projects/chmac/forum.
- If you know any bug or have improvement idea, Use the issue(버그)
http://dev.odroid.com/projects/chmac/issue
8 Others
* ChmacOrgFrontPage : Original Front Page