Sedikit Catatan Tentang EVDO di ZeroShell

Ini catatan lama (akhir 2009) saya saat membuat Mobile Router dengan Zeroshell yang ketemu, terutama saat hendak mengintegrasikan modem EVDO ke Zeroshell. Yang perlu dilakukan adalah 1) update kernel, 2) update initrd.gz (karena ada modul yang terinstall di sana), dan 3) update root filesystem. Hehehe, repot yah (tenang guys, saya lagi telah menyusun kembali script-script yang terserak untuk mengotomatisasi ketiga langkah tersebut, mudah2an weekend ini sudah kelar). Mohon maaf isinya berantakan, maklum diambil dari log kegiatan.

Sejauh yang saya tahu, Zeroshell-1.0-beta12 tidak mensupport 3G untuk CDMA (EVDO), karena:

  1. konfigurasi usb_modeswitch tidak mengenal modem usbnya (misalnya ZTE AC8710), sehingga usb_modeswitch perlu diupdate (usb_modeswitch ada di root filesystem). Untungnya, modul kernel usb serial sudah mensupport modem ini (mungkin kernel dan initrd.gz tidak perlu diupdate, tapi saya melakukannya karena masalah driver ethernet Realtek 8169 di motherboard saya yang memerlukan driver terbaru).
  2. Session ppp chat yang berbeda antara HSPA dan EVDO, sehingga script kerbynet perlu juga dimodifikasi

Setelah usb_modeswitch diupdate dan modem combo dikenali sebagai modem (bukan usb storage), berikutnya adalah memodifikasi ppp chat.

PPP option untuk CDMA EVDO berbeda dengan 3G GSM, yaitu perlu menambahkan option name. Kalau tidak maka LCP akan reject (Gagal di CHAP authentification):

Oct 30 04:00:13 zeroshell pppd[1502]: pppd 2.4.4 started by root, uid 0
Oct 30 04:00:16 zeroshell pppd[1502]: Serial connection established.
Oct 30 04:00:16 zeroshell pppd[1502]: using channel 63
Oct 30 04:00:16 zeroshell pppd[1502]: Using interface ppp0
Oct 30 04:00:16 zeroshell pppd[1502]: Connect: ppp0  /udev/ttyUSB0
Oct 30 04:00:17 zeroshell pppd[1502]: Warning - secret file /etc/ppp/pap-secrets has world and/or group access
Oct 30 04:00:17 zeroshell pppd[1502]: sent [LCP ConfReq id=0x1    ]
Oct 30 04:00:17 zeroshell pppd[1502]: rcvd [LCP ConfAck id=0x1    ]
Oct 30 04:00:17 zeroshell pppd[1502]: rcvd [LCP ConfReq id=0x7     ]
Oct 30 04:00:17 zeroshell pppd[1502]: No auth is possible
Oct 30 04:00:17 zeroshell pppd[1502]: sent [LCP ConfRej id=0x7 ]
Oct 30 04:00:17 zeroshell pppd[1502]: rcvd [LCP ConfReq id=0x8    ]
Oct 30 04:00:17 zeroshell pppd[1502]: sent [LCP ConfAck id=0x8    ]
Oct 30 04:00:17 zeroshell pppd[1502]: sent [CCP ConfReq id=0x1   ]
Oct 30 04:00:17 zeroshell pppd[1502]: sent [IPCP ConfReq id=0x1  ]
Oct 30 04:00:17 zeroshell pppd[1502]: rcvd [IPCP ConfReq id=0x1 ]
Oct 30 04:00:17 zeroshell pppd[1502]: sent [IPCP ConfAck id=0x1 ]
Oct 30 04:00:20 zeroshell pppd[1502]: sent [CCP ConfReq id=0x1   ]
Oct 30 04:00:20 zeroshell pppd[1502]: sent [IPCP ConfReq id=0x1  ]
Oct 30 04:00:20 zeroshell pppd[1502]: rcvd [IPCP ConfReq id=0x2 ]
Oct 30 04:00:20 zeroshell pppd[1502]: sent [IPCP ConfAck id=0x2 ]
Oct 30 04:00:20 zeroshell pppd[1502]: rcvd [LCP ProtRej id=0x9 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f 00 00 00 dc e1 8c 14 0d 0a 43 6f 6e 74 65 6e ...]
Oct 30 04:00:20 zeroshell pppd[1502]: Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
Oct 30 04:00:20 zeroshell pppd[1502]: rcvd [LCP TermReq id=0xa]
Oct 30 04:00:20 zeroshell pppd[1502]: LCP terminated by peer
Oct 30 04:00:20 zeroshell pppd[1502]: sent [LCP TermAck id=0xa]
Oct 30 04:00:23 zeroshell pppd[1502]: Connection terminated.
Oct 30 04:00:24 zeroshell pppd[1502]: Hangup (SIGHUP)
Oct 30 04:00:24 zeroshell pppd[1502]: Modem hangup

Bug yang sering ditemukan adalah

  1. Komunikasi ke modem (ttyUSB0) kadang tidak bisa. Solusinya: modem dicabut dan kemudian dicolokkan lagi. Saya belum tahu solusi yang lebih baik.
  2. Chap di ppp harus dilakukan. Solusi: update /root/kerbynet.cgi/scripts/3Gconnect untuk menggunakan APN sebagai chap name dan membuat file /tmp/ppp-secrets

Sekarang updating PPP di Zeroshell, yaitu mengupdate ppp script (file /root/kerbynet.cgi/scripts/3Gconnect), untuk menyisipkan baris berikut di option PPP:

	name 'smart'

untuk smart. Nama saya kira, nama bisa bebas.

Sebagian isi file /root/kerbynet.cgi/scripts/3Gconnect:

if [ -n "$APN" ] ; then #Replace with  chap username (30/10)
  #APN="\"OK\" 'AT+CGDCONT=1,\"IP\",\"$APN\",\"\",0,0'"  
  APNSET="name \"$APN\""
  grep -qe "$APN" /tmp/ppp-secrets || echo "$APN * $APN" >> /tmp/ppp-secrets
fi
if [ "$DEFAULTROUTE" == yes ] ; then
  DEFAULTROUTE=defaultroute
else
  DEFAULTROUTE=""
fi

cat > /tmp/$PPP.3G << EOF
/udev/$TTY
460800
debug
lock
crtscts
noauth
$DEFAULTROUTE
$APNSET
persist
asyncmap 0
lcp-echo-failure 100000000000
noipx
connect "$SCRIPTS/chat.sh"
unit $UNIT
EOF
cat > /tmp/$PPP.chat << EOF
ABORT 'NO CARRIER' ABORT 'ERROR' ABORT 'NO DIALTONE' ABORT
'BUSY' ABORT 'NO ANSWER'
'' ATZ
OK-AT-OK "ATDT$DIAL"
CONNECT \d\c
EOF

Sehingga saat ppp chat dijalankan lognya menjadi:

Oct 30 04:02:50 zeroshell pppd[2181]: pppd 2.4.4 started by root, uid 0
Oct 30 04:02:53 zeroshell pppd[2181]: Serial connection established.
Oct 30 04:02:53 zeroshell pppd[2181]: using channel 67
Oct 30 04:02:53 zeroshell pppd[2181]: Using interface ppp0
Oct 30 04:02:53 zeroshell pppd[2181]: Connect: ppp0 <--> /udev/ttyUSB0
Oct 30 04:02:54 zeroshell pppd[2181]: Warning - secret file /etc/ppp/pap-secrets has world and/or group access
Oct 30 04:02:54 zeroshell pppd[2181]: sent [LCP ConfReq id=0x1    ]
Oct 30 04:02:54 zeroshell pppd[2181]: rcvd [LCP ConfAck id=0x1    ]
Oct 30 04:02:55 zeroshell pppd[2181]: rcvd [LCP ConfReq id=0x2     ]
Oct 30 04:02:55 zeroshell pppd[2181]: sent [LCP ConfAck id=0x2     ]
Oct 30 04:02:55 zeroshell pppd[2181]: rcvd [CHAP Challenge id=0x1 , name = ""]
Oct 30 04:02:55 zeroshell pppd[2181]: Warning - secret file /etc/ppp/chap-secrets has world and/or group access
Oct 30 04:02:55 zeroshell pppd[2181]: sent [CHAP Response id=0x1 , name = "smart"]
Oct 30 04:02:55 zeroshell pppd[2181]: rcvd [CHAP Success id=0x1 ""]
Oct 30 04:02:55 zeroshell pppd[2181]: CHAP authentication succeeded
Oct 30 04:02:55 zeroshell pppd[2181]: CHAP authentication succeeded
Oct 30 04:02:55 zeroshell pppd[2181]: sent [CCP ConfReq id=0x1   ]
Oct 30 04:02:55 zeroshell pppd[2181]: sent [IPCP ConfReq id=0x1  ]
Oct 30 04:02:55 zeroshell pppd[2181]: rcvd [IPCP ConfReq id=0x1 ]
Oct 30 04:02:55 zeroshell pppd[2181]: sent [IPCP ConfAck id=0x1 ]
Oct 30 04:02:56 zeroshell pppd[2181]: rcvd [LCP ProtRej id=0x3 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f 00 00 00 5d fc a2 d1 a1 76 63 91 96 74 c2 69 ...]
Oct 30 04:02:56 zeroshell pppd[2181]: Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
Oct 30 04:02:56 zeroshell pppd[2181]: rcvd [IPCP ConfRej id=0x1 ]
Oct 30 04:02:56 zeroshell pppd[2181]: sent [IPCP ConfReq id=0x2 ]
Oct 30 04:02:56 zeroshell pppd[2181]: rcvd [IPCP ConfNak id=0x2 ]
Oct 30 04:02:56 zeroshell pppd[2181]: sent [IPCP ConfReq id=0x3 ]
Oct 30 04:02:56 zeroshell pppd[2181]: rcvd [IPCP ConfAck id=0x3 ]
Oct 30 04:02:56 zeroshell pppd[2181]: local  IP address 10.11.218.41
Oct 30 04:02:56 zeroshell pppd[2181]: remote IP address 10.17.4.12
Oct 30 04:02:56 zeroshell pppd[2181]: Script /etc/ppp/ip-up started (pid 2248)
Oct 30 04:02:56 zeroshell pppd[2181]: Script /etc/ppp/ip-up finished (pid 2248), status = 0x7f

3 Responses to “Sedikit Catatan Tentang EVDO di ZeroShell”

  1. “Komunikasi ke modem (ttyUSB0) kadang tidak bisa. Solusinya: modem dicabut dan kemudian dicolokkan lagi.”
    udah ketemu belum kang solusi diatas trus satu lagi klo menggunakan 2 modem yg sama (zte ac2726) bisa ga yah, apa nantinya ga tjadi konflik?

    makasih.

  2. It’s amazing designed for me to have a website, which is good
    designed for my know-how. thanks admin

Trackbacks

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: