setup internet sharing di notebook nya Bayu, Utan Kayu 10 November 2007

Assalamu alaikum,

Maaf semuanya baru bisa posting sekarang, diminta sama mas bayu :)
di 10 November 2007 di utan kayu, notebook mas Bayu bisa internetan pake wlan, yang laen cengo gak bisa liat internet...setelah presentasi CI di oprek dikit supaya bisa internetan semua nya. Berikut mantra-mantra nya...

1. Pasang hub 16 port, kebetulan bawa supaya bisa sharing internet, pasang kabel UTP ke masing masing notebook. gak peduli pake kabel cross apa strignt soalnya switch nya sudah support mdi-X, yang autodetek kabel.

2. Pilih komputer yang mau jadi gateway, dalam hal ini nb nya mas bayu, biasanya punya 2 interface, wlan dan ethernet. yang wlan udah konek ke internet lewat wlan gedung. Kalo ada koneksi yang laen juga bisa aja, misalnya modem dial-up pstn, gprs modem, ADSL, etc.

3. setup ip forward, ip forward ini supaya paket ip bisa masuk dari wlan kemudian keluar lewat ethernet. semua pc/router/modem yang jadi router/gateway harus ipforward enable. berikut ini setup nya btw ini gak permanen, kalau di restart config nya hilang, dijalankan dari user root
#echo 1 > /proc/sys/net/ipv4/ip_forward

4. setup NAT aka masquerade (di linux), feature ini supaya ip private yang di LAN local bisa konek ke internet lewat gateway yang punya ip public (di mas bayu gak langsung ke internet sih, jadi gak pake ip public). IP private gak akan dikenal di routing di INTERNET, jadi komputer yang pake ip private harus melalui calo di router/modem/pc yang menyediakan NAT. Dari internet yang dikenal ip nya cuma si calo ini, nah si calo NAT ini yang membongkar header ip private menjadi ip public, dan sebaliknya.
Btw ini mantra canggih nya, jaringan ip lan yang di untuk client adalah 192.168.2.0/24, ini juga gak permanen...kalo restart hilang
#ipforward -t nat -A POSTROUTING -t tcp -s 192.168.2.0 -j MASQUERADE

5. beres...oh belum ternyata... di client perlu di setup juga ya... hehehe. ini setup nya, IP mas bayu yang jadi gateway adalah 192.168.2.1, ip untuk dns adalah 192.168.1.1 ada cache nameserver di sana. so jadi kita perlu beberapa mantra lagi untuk di client
setup ip address
#ifconfig eth0 192.168.2.10
setup default geteway
#route add default gw 192.168.2.1
setup dns aka nameserver
echo "nameserver 192.168.1.1" >/etc/resolv.conf

6. ok beres...test dulu dong..., ok kita test konek gak ke internet
liat status lan card
#mii-tool
eth0: negotiated 100baseTx-FD, link ok
atau
#ethtool
Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 32
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbg
Wake-on: d
Current message level: 0x00000007 (7)
Link detected: yes

lihat link ok, atau Link detected: yes...
selanjutnya kita test ping, lihat replay dari gateway, kalau belum replay berarti ipnya salah, belum konek kabel nya, atau gateway nya di blok gak bisa di ping... :) tega amat...sih
#ping 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=0.159 ms
64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=0.125 ms

ok sekarang test bisa konek ke gateway yang di luar gak, kita tau default gateway nya punya mas bayu adalah 192.168.1.1 jadi kita ping ke 192.168.1.1, kalau berhasil nat & ip forward nya jalan, kalau belum cek lagi ip-forward dan nat
#ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=0.159 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=0.125 ms

cek ip forward di gateway, 1 = enable, 0 = disable
# cat /proc/sys/net/ipv4/ip_forward
1
cek nat nya di gateway, lihat ada rule MASQUERADE gak di sana, dan ip/network yang di sharing, sory gak ada contoh nya soalnya gak jadi gateway...
#iptables -L

cek host website di internet, kalau keluar ip nya berarti udah jalan koneksi dns/nameserver nya
#host www.detik.com
www.detik.com is an alias for detik.com.
detik.com has address 202.158.66.86
detik.com has address 202.158.66.94
detik.com has address 202.158.66.190
detik.com has address 203.190.241.41
detik.com has address 203.190.241.43
detik.com has address 202.158.66.20

7. ok semua beres...sekarang buka browser, dan tada bisa internetan...

setup di atas tadi belum pake proxy, atau pakai server proxy transparent jadi di browser gak perlu setup proxy. oh ya transparent proxy adalah proxy yag gak kelihatan di client (gak perlu di setup). mekanisme kerja nya, proxy bekerja di port 3128, sedangkan http port ada di port 80, nah di gateway ada mantra lagi yang me redirect (membelok) yangtujuan nya ke port 80 di larikan ke port 3128, akhir nya proxy yang bekerja. Nipu-nipu dikit lah...

8. kalau pake proxy gimana ? di client tinggal setup proxy di browser nya, cari bagian network/connection sory gak apal tempat nya silahkan cari sendiri. kemudian masukan ip proxy dan port nya.

9. ok kita bikin proxy di gateway ...bisa ya bisa lah, gak peduli kompie nya, mau server segede lemari, desktop, notebook, atau pda (kuat gak ya jadi proxy). kemaren gak di praktekin di nd nya mas bayu, jadi ini cuma cerita FIKTIF. Berikut cara nya
install proxy server, bisanya squid di linux, rerfrensi pake fedora ya
cek dulu sudah keintall squid nya
#rpm -qa |grep squid
#rpm -ivh squid-2.6_stable10.i386.rpm
atau
#yum install squid
setup squid nya
#vim /etc/squid/squid.conf

cari baris berikut yang laen jangan ganggu dulu

visible_hostname engkur.proxy.server.gue
cache_dir ufs /var/spool/squid 100 16 256
acl src our_network 192.168.2.0/24, 127.0.0.0/8
httpd_access allow our_network

sekarang restart squid nya
#service squid restart

bisa ok good, tinggal setup di client kan...

11. sekarang setup transparent proxy
ok sekarang udah pake distro terbaru semua kan, mandriva 2008, ubuntu gutsy 7.10, fedora 8, semuanya pake squid versi 2.6, konfigurasi transparent proxy nya berbeda dari squid versi 2.4. berikut di squid 2.4
buka lagi /etc/squid/squid.conf
#vim /etc/squid/squid.conf
pastikan ada baris berikut, kalau belum ada ya buat

httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

berikut di squid 2.6

http_port 192.168.2.1:3128 transparent

ok di squid, sekarang setup iptables nya, asumsi saya proxy nya ada di gateway
#iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128

ok deh kayak nya gitu aja deh mantra-mantra sihir, dari perguruan linux NF... ya Ilmu nya masih kalah lah sama mantra nya Harry Potter, apalagi mantra CI/PHP dan SUN/JAVA... btw tapi laen perguruan ya...gak nyambung deh...

Kurniadi