|
หมายเหตุ
บทความนี้เขียนจากประสบการส่วนตัว
อาจจะไม่ถูกต้องร้อยเปอร์เซ็นต์
ถ้าผิดพลาดต้องขออภัยด้วย
บ่อยครั้งที่มีความจำเป็นต้องคอนฟิกการ์ดแลนบน
Linux โดยใช้ Command Line
ซึ่งคำสั่งที่นิยมใช้กันคำสั่งหนึ่งก็คือ
ifconfig ตัวอย่างการใช้งานเช่น
:
#ifconfig eth0 192.168.1.1netmask
255.255.255.0 up
#ifconfig eth0:1 192.168.2.1 netmask
255.255.255.0 up
แต่ปัญหาของคำสั่งนี้ที่ผมเจอก็คือเมื่อมีการ
Reboot เครื่องใหม่ ค่าของ
Network ที่ได้เซ็ตไว้จะหายไป
ซึ่งการที่จะไม่ให้ค่าที่ได้เซ็ตไว้หายไปก็สามารถทำได้ด้วยการใช้คำสั่ง
setup
ซึ่งเมื่อเรียกคำสั่งนี้แล้วก็จะมีเมนูให้เลือกหลายเมนู
การเซ็ตค่า Network
ก็ให้เลือกเมนู Network Configuration
ดังรูปที่ 1 และการคอนฟิกค่าต่าง ๆ
ก็ให้ใส่ข้อมูลดังรูปที่ 2

รูปที่ 1

รูปที่ 2
แต่การคอนฟิกด้วยการใช้คำสั่ง
setup ก็ยังมีขีดจำกัดอยู่เช่นกันคือสามารถเซ็คค่าของการ์ดแลนได้การ์ดเดียวเท่านั้น
ซึ่งถ้ามีการ์ดแลนมากกว่านี้ก็จะเจอปัญหา
และจากรูปที่ 2 จะเห็นว่าค่าของ
DNS ก็สามารถเซ็ตได้เฉพาะ
Primary nameserver เท่านั้น
เพื่อหลีกเลี่ยงขีดจำกัดดังกล่าวมีอีกวิธีหนึ่งที่สามารถช่วยได้คือการเข้าไปคอนฟิกที่ไฟล์ที่ทำหน้าที่เก็บข้อมูลเกี่ยวกับ
Network ซะเลย
ซึ่งไฟล์ที่ใช้เก็บข้อมูลที่จำเป็นเกี่ยวกับ
Network Configuration (ตามความเข้าใจของผม)
จะมีอยู่ 2 ชุดด้วยกัน คือ
1. ไฟล์
/etc/sysconfig/network
2. เป็นกลุ่มไฟล์ที่เกี่ยวกับ Network
ซึ่งจะอยู่ภายใต้ไดเร็กทอรี่
/etc/sysconfig/networking/profiles/defalut
ซึ่งในตำแหน่งนี้อาจจะประกอบด้วยไฟล์ดังต่อไปนี้
-
hosts
- ifcfg-eth0
- network
- resolv.conf
แต่ละไฟล์เก็บข้อมูลอะไร
1.ข้อมูลในไฟล์ /etc/sysconfig/network
อาจจะมีดังนี้
NETWORKING=YES
HOSTNAME=south.intranet.cattelecom.co.th
GATEWAY=172.24.51.1
โดยค่า
GATEWAY
จะเป็นค่า
Gateway
สำหรับทุก
Interface แต่ถ้ามีการระบุค่า
Gateway ที่แต่ละ Interface
แล้ว ระบบจะใช้ค่า Gateway
ของแต่ละ Interface
เป็นหลัก ยกเว้นถ้าที่แต่ละ
Interface เช่นที่ etho
ไม่ได้ระบุค่า Gateway
เอาไว้ ค่าของ Gateway
ในไฟล์นี้ก็จะถูกใช้
2. ข้อมูลที่อยู่ในกลุ่มไฟล์ที่อยู่ภายใต้ไดเร็กทอรี่
/etc/sysconfig/networking/profiles/defalut
2.1 ไฟล์
hosts จะเก็บค่าเกี่ยวกับชื่อ
host
ซึ่งอาจจะมีค่าดังนี้
# Do not remove the following line,
or various programs
# that require network functionality
will fail.
127.0.0.1
south.intranet.cattelecom.co.th south
localhost.localdomain
localhost
2.2 ไฟล์ ifcfg-eth0 จะเก็บค่าต่าง ๆ
ของ eth 0
ซึ่งอาจจะมีข้อมูลเป็นดังนี้
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.24.51.11
NETMASK=255.255.255.0
GATEWAY=172.24.51.1
TYPE=Ethernet
USERCTL=no
PEERDNS=no
NETWORK=172.24.51.0
BROADCAST=172.24.51.255
2.3 ไฟล์ network
ซึ่งในไฟล์อาจจะมีข้อมูลดังนี้
HOSTNAME=south.intranet.cattelecom.co.th
2.4 ไฟล์ resolv.conf
ภายในไฟล์นี้จะเป็นข้อมูลของ nameserver
ซึ่งอาจจะมีข้อมูลเป็นดังนี้
nameserver
202.129.16.69
nameserver
202.129.27.134
nameserver
202.129.16.28
ไฟล์ที่เราต้องคอนฟิก
จากประสบการณ์ถ้าต้องการจะเปลี่ยนแปลงค่า
IP
Address ของการ์ดแลน
และต้องการเปลี่ยน nameserver
ก็ต้องคอนฟิกไฟล์ดังต่อไปนี้
1. ไฟล์ที่เป็น Interface
ของการ์ดแลน ในที่นี้คือ
/etc/sysconfig/networking/profiles/defalut/ifcfg-eth0
โดยให้ทำการแก้ไขข้อมูลในไฟล์นี้ตามความต้องการใช้งานจริง
2.
ไฟล์
/etc/sysconfig/networking/profiles/defalut/resolv.conf
เพื่อเปลี่ยนค่า nameserver (DNS)
ที่ต้องการใช้งาน
--------จบ-------- |