Monday, March 26, 2012

In search of RARP server on MacOS

Reverse ARP server seems to be scarce. There is one on Windows, but old, so far I could only run it on Windows 2000. At a glance, it's pretty easy on MacOS, since rarpd is installed by default. However, how to make it actually reply to reverse arp request is tricky. I could not find hands-on info on the net, only rarpd man page which gives very little info on how to actually use it. One hands-on info I found was for an old version of MacOS, while I am on Snow Leopard, where access to NetInfo has been changed to using dscl instead of nicl.

 I then tried this dscl version of the above hands-on guide:
mkdir -p /private/tftpboot) ln -s /private/tftpboot /tftpboot vi /etc/ethers #/etc/ethers 00:A0:DE:30:34:4D client sudo dscl Entering interactive mode... (type "help" for commands) > -create /Local/Default/Hosts/XX:XX:XX:XX:XX:XX 12.34.56.78 > sudo /usr/sbin/rarpd -d en0 en0: c8:2a:14:d:a3:86
But it kept just saying "rarpd: got a packet" but replied not.

 I tried various things in order to fulfill the vague requirements set on rarpd manual:
Rarpd services Reverse ARP requests on the Ethernet connected to interface. Upon receiving a request, rarpd maps the target hardware address to an IP address via its name, which must be present in both the ethers(5) and hosts(5) databases. If a host does not exist in both databases, the translation cannot proceed and a reply will not be sent. Additionally, a request is honored only if the server (i.e., the host that rarpd is running on) can "boot" the target; that is, if the directory /tftpboot/ipaddr exists, where is the target IP address. In normal operation, rarpd forks a copy of itself and runs in the background. Anomalies and errors are reported via syslog(3).
I.e.,
1) IP address and its name must be present in ethers database
2) IP address and its name must be present in hosts database
3) the directory /tftpboot/ipaddr exists, where is the target IP address But to no avail. I gave up, got a Windows 2000 to run rarpd instead :(

Monday, January 2, 2012

armv6 missing said Application Loader

When loading an iOS app built with Xcode4 to iTunes using Application Loader, it balked: "application executable is missing a required architecture. At least one of the following architecture(s) must be present: armv6" In "Architectures" change from just "$(ARCHS_STANDARD_32_BIT)" to "armv6 $(ARCHS_STANDARD_32_BIT)". Then add to info.plist file the following: UIRequiredDeviceCapabilities armv7 Make sure in "Supported Platforms" the distribution does not contain "iphonesimulator". Make sure also that "Build Active Architectures Only" is deselected for distribution.

Monday, May 16, 2011

Syncing with rsync

psyncX that I have been using does not work on Snow Leopard.
Since I am also in search for network storage, then probably just ditch psyncX and go for bare-bone rsync, which is supposedly network-aware compared to pysnc.

Here is the command line:

rsync -aNHAXxvuP --fileflags --forcechange --exclude='.DS_Store' /src /dst

a equals -rlptgoD
N preserve createtimes
H preserve hardlinks
A preserve ACLs
X preserve xattr
x don't cross file system
v verbose
u skip files that are newer on the receiver
P equals --partial --progress, i.e., shows progress, and don't delete partially synced files when command is interrupted (to be resumed later)

when done, do the other way around (flip /src and /dst) to get synced both way.

This set of options makes rsync passed bbouncer test.

Wednesday, May 11, 2011

In search of reliable backup and sync solution for Mac

I got several Macs to use, and need to have mostly same set of files on them.
I may not have some or all of them physically on the same location, so copying via LAN is not a solution.

I thought I found the solution: Amazon S3 + ExpanDisk + rsync + sparse image

(Ideally the solution should be Amazon S3 + s3fs + MacFUSE + rsync + sparse image, but latest s3fs requires new version of FUSE, while MacFUSE is in abandoned state, still using older FUSE)

BUT ... loading and accessing the image file over the net was painfully slow and unstable.

Sunday, June 6, 2010

Previous versions of iPhone SDK

iPhone SDK 2.2.1 direct download link
http://developer.apple.com/iphone/download.action?path=/iphone/iphone_sdk_for_iphone_os_2.2.1__9m2621a__final/iphone_sdk_for_iphone_os_2.2.19m2621afinal.dmg

iPhone SDK 2.2 direct download link
http://developer.apple.com/iphone/download.action?path=/iphone/iphone_sdk_for_iphone_os_2.2__9m2621__final/iphone_sdk_for_iphone_os_2.2_9m2621_final.dmg


iPhone SDK 3.0 (Xcode 3.1.3) Leopard direct download link
http://developer.apple.com/iphone/download.action?path=/iphone/iphone_sdk_3.0__final/iphone_sdk_3.0__leopard__9m2736__final.dmg

iPhone SDK 3.0 (Xcode 3.2) Snow Leopard direct download link
http://developer.apple.com/iphone/download.action?path=/iphone/iphone_sdk_3.0__final/iphone_sdk_3.0__snow_leopard__final.dmg


iPhone SDK 3.1 with Xcode 3.1.4 Leopard direct download link
http://developer.apple.com/iphone/download.action?path=/iphone/iphone_sdk_3.1__final/iphone_sdk_3.1_with_xcode_3.1_final__leopard__9m2809.dmg

iPhone SDK 3.1 with XCode 3.2.1 for Snow Leopard
http://developer.apple.com/iphone/download.action?path=/iphone/iphone_sdk_3.1__final/iphone_sdk_3.1_with_xcode_3.2_final__snow_leopard__10a432.dmg

iPhone SDK 3.1.2 with XCode 3.1.4 for Leopard
http://developer.apple.com/iphone/download.action?path=/iphone/iphone_sdk_3.1.2__final/iphone_sdk_3.1.2_with_xcode_3.1.4__leopard__9m2809.dmg

iPhone SDK 3.1.2 with XCode 3.2.1 for Snow Leopard
http://developer.apple.com/iphone/download.action?path=/iphone/iphone_sdk_3.1.2__final/iphone_sdk_3.1.2_with_xcode_3.2.1__snow_leopard__10m2003.dmg

iPhone SDK 3.1.3 with XCode 3.1.4 for Leopard
http://developer.apple.com/iphone/download.action?path=/iphone/iphone_sdk_3.1.3__final/iphone_sdk_3.1.3_with_xcode_3.1.4__leopard__9m2809a.dmg

iPhone SDK 3.1.3 with XCode 3.2.1 for Snow Leopard
http://developer.apple.com/iphone/download.action?path=/iphone/iphone_sdk_3.1.3__final/iphone_sdk_3.1.3_with_xcode_3.2.1__snow_leopard__10m2003a.dmg

Thursday, June 3, 2010

Start up with Appcelerator Titanium

Install Android SDK

Install development environment (Eclipse)

Install Google APIs addon from inside Ecplise
http://code.google.com/intl/ja/android/add-ons/google-apis/installing.html

Download and install Appcelerator Titanium
http://www.appcelerator.com/download

Point Titanium to Android SDK location on disk

Download Kitchen Sink
http://developer.appcelerator.com/doc/kitchensink

Launch.

"Give up establishing PPP/LCP in REQSENT" on Yamaha RTX

Yamaha RTX is set up to receive PPTP connection, but client could not connect, like below:

2010/06/02 19:18:20: TUNNEL[14] PPTP connection is established: 220.100.223.36
2010/06/02 19:18:20: PP[ANONYMOUS01] PPTP Connect
2010/06/02 19:18:21: PP[ANONYMOUS01] SEND LCP ConfReq in STARTING
2010/06/02 19:18:21: ff 03 c0 21 01 01 00 13 01 04 07 00 03 05 c2 23
2010/06/02 19:18:21: 80 05 06 00 40 18 58
010/06/02 19:18:24: PP[ANONYMOUS01] SEND LCP ConfReq in REQSENT
2010/06/02 19:18:24: ff 03 c0 21 01 01 00 13 01 04 07 00 03 05 c2 23
2010/06/02 19:18:24: 80 05 06 00 40 18 58
2010/06/02 19:18:27: PP[ANONYMOUS01] SEND LCP ConfReq in REQSENT
2010/06/02 19:18:27: ff 03 c0 21 01 01 00 13 01 04 07 00 03 05 c2 23
2010/06/02 19:18:27: 80 05 06 00 40 18 58
...

2010/06/02 19:18:51: PP[ANONYMOUS01] Give up establishing PPP/LCP in REQSENT
2010/06/02 19:18:51: PP[ANONYMOUS01] PPTP Disconnecting, cause [PPP: LCP Timeou
t]
2010/06/02 19:18:51: TUNNEL[14] PPTP connection is closed: xxx.xxx.xxx.xxx

Adding "pppoe auto connect on" to "pp select anonymous" part solved this issue.

Some references
PPTP commands
http://www.rtpro.yamaha.co.jp/RT/docs/pptp/pptp-command.html
Setting samples
http://www.rtpro.yamaha.co.jp/RT/docs/example/pptp/pptp_example1.html
http://tomo.no-ip.com/goodstream/vpn/pptp/rtx1000/rtx1000.html