ifupdown กับแล็ปท็อปพเนจร
พูดถึง ifupdown พื้นฐาน และ การใช้กับเครือข่ายไร้สาย ไปแล้ว คราวนี้ มาพูดถึงการใช้งานอีกแบบหนึ่ง ซึ่งเหมาะสำหรับเครื่องที่เปลี่ยนเครือข่ายบ่อย เช่น แล็ปท็อป คือการทำโพรไฟล์เครือข่าย
สมมุติว่าคุณหิ้วแล็ปท็อปไป ๆ มา ๆ เป็นประจำ 2-3 ที่ ที่บ้านใช้เครือข่ายไร้สายแบบ static IP แบบมี WEP key ที่สำนักงานใช้ DHCP แบบมี WPA และที่ไซต์งานใช้ DHCP แบบล็อค MAC address การเซ็ตค่าใหม่ทุกครั้งคงไม่สะดวก แต่คุณสามารถทำโพรไฟล์ของเครือข่ายต่างๆ เก็บไว้ แล้วเลือกใช้เอาตามต้องการได้
ย่อหน้า iface
นั้น ไม่จำเป็นต้องตามด้วยชื่อ interface เสมอไป แต่คุณสามารถตั้งชื่อโพรไฟล์ตามใจชอบได้ เช่น ในกรณีดังกล่าว ก็อาจจะทำโพรไฟล์ home
, office
, site
เตรียมไว้ดังนี้:
iface home inet static # wireless parameters wireless_mode ad-hoc wireless_channel 11 wireless_essid my-essid wireless_key xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx # IP address 192.168.1.2 gateway 192.168.1.1 iface office inet dhcp wpa-driver hostap wpa-ssid my-essid wpa-psk passphrase iface site inet dhcp wireless_mode managed wireless_essid site-essid
จากนั้น เมื่อคุณไปใช้เครือข่ายไหน ก็เลือกสั่ง ifup
โดยใช้รูปแบบ interface=profile
เช่น เมื่อกลับมาบ้านก็สั่ง:
# ifup wlan0=home
อย่างไรก็ดี ยังมีอีกจุดหนึ่งที่ขาดไป คือ DNS server จะเห็นว่า ในตัวอย่างข้างต้น เมื่อคุณไปใช้เครือข่าย DHCP จะไม่มีปัญหาอะไร เพราะมักจะได้ DNS server มาพร้อมกับข้อมูล DHCP อยู่แล้ว แต่พอกลับมาบ้าน ซึ่งใช้ static IP ค่า DNS server นั้นจะยังอยู่ และคุณจะไม่สามารถใช้ DNS ของเครือข่ายก่อนได้
มีแพกเกจที่มาเสริมตรงนี้ คือ resolvconf
# aptitude install resolvconf
แพกเกจ resolvconf นี้ จะช่วยจัดการปรับแฟ้ม /etc/resolv.conf
ให้โดยอัตโนมัติ โดยมีการเชื่อมร่วมกับ ifupdown ผ่านบรรทัดที่ขึ้นต้นด้วย dns-
ตามด้วยบรรทัดใน /etc/resolv.conf
ที่ต้องการ เช่น สมมุติว่าคุณตั้ง DNS server ที่บ้านไว้ที่ 192.168.1.1 และใช้ myhome.com เป็น search domain ก็อาจจะเพิ่มบรรทัดดังนี้:
iface home inet static # wireless parameters wireless_mode ad-hoc wireless_channel 11 wireless_essid my-essid wireless_key xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx # IP address 192.168.1.2 gateway 192.168.1.1 # resolvconf dns-search myhome.com dns-nameserver 192.168.1.1
ซึ่งเมื่อสั่ง ifup wlan0=home
ก็จะเอาบรรทัดที่ขึ้นต้นด้วย dns-
ไปตัดส่วนหน้าออกแล้วสร้างเป็นเนื้อหาของ /etc/resolv.conf
ดังนี้:
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN search myhome.com nameserver 192.168.1.1
นอกจากเชื่อมรวมกับ ifupdown แล้ว resolvconf ยังมีการสื่อสารต่อไปถึงแพกเกจบริการอินเทอร์เน็ตอื่นๆ ที่เกี่ยวข้องกับแฟ้ม /etc/resolv.conf
นี้ด้วย เช่น bind9 (ในกรณีที่กำหนดเป็น caching DNS), dnsmasq, squid เป็นต้น ทำให้ผลของการเปลี่ยนเครือข่ายกระจายไปครบทุกที่โดยอัตโนมัติ
- thep's blog
- Log in to post comments
![]() |
ลิขสิทธิ์ของบทความเป็นของเจ้าของบทความแต่ละชิ้น ผลงานนี้ ใช้สัญญาอนุญาตของครีเอทีฟคอมมอนส์แบบ แสดงที่มา-อนุญาตแบบเดียวกัน 3.0 ที่ยังไม่ได้ปรับแก้ |
Comments
Re: ifupdown กับแล็ปท็อปพเนจร
on 25 July, 2009 - 09:37 Permalink
ifupdown + resolvconf สามารถนำไปปรับใช้ ในกรณีดังต่อไปนี้ได้หรือไม่ ครับ
เครื่องที่ทำงาน (ประมาณ 20 เครื่อง) ครับ ทุกเครื่อง ต่อกับ switching/hub เพื่อ share internet ผ่าน ADSL ของ CAT ทุกเครื่องรับค่า IP DHCP และสามารถติดต่อกับ internet ได้โดยตรง(ไม่มี server ของหน่วยงาน) ตอนนี้จะทำ web server (lenny+apache+drupal และ/หรือ อื่น ๆ) ขึ้นมาครับ เพื่อให้บริการข้อมูลเฉพาะเครื่องในหน่วยงาน (เปิดเฉพาะเวลาทำงาน) ไม่อยากใช้ dynamic dns ของ internet ภายนอกเนื่องจากข้อมูลบางอย่างของหน่วยงาน ไม่อยากเปิดเผยใน internet ครับ และจุดประสงค์รองอีกอย่างคือ ไม่อยากให้มี server เปิดตลอดเวลา(ประหยัด resources ครับ) แต่มีบางเครื่องต้องการใช้ internet นอกเวลาครับ รบกวนแนะนำด้วยครับ ขอบพระคุณครับ
Re: ifupdown กับแล็ปท็อปพเนจร
on 27 July, 2009 - 09:21 Permalink
local server นี่ ก็น่าจะแค่กำหนด static IP (ตาม บทความตอนแรก) โดยให้อยู่นอกช่วงที่ ADSL router แจกผ่าน DHCP จากนั้น เครื่องลูกก็ access ผ่านเบอร์ IP ที่กำหนด หรืออาจจะกำหนดชื่อใน DNS ที่ ADSL router ก็ได้ เท่านี้ก็น่าจะได้แล้วนะครับ
Re: ifupdown กับแล็ปท็อปพเนจร
on 31 July, 2009 - 18:31 Permalink
ขอบพระคุณครับ พอดีช่วง 2 - 3 วันนี้ ไม่ได้เข้า net ครับ