วันศุกร์ที่ 29 มิถุนายน พ.ศ. 2555

ubuntu part1


ifconfig -a|more
nano /etc/udev/rules.d/70-persistent-net.rules


SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:22:b0:ce:12:2a", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"

# PCI device 0x1106:0x3065 (via-rhine)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:13:8f:56:f5:2c", ATTR{type}=="1", KERNEL=="eth*", NAME="eth6"

# PCI device 0x1186:0x1300 (8139too)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:21:91:e2:1b:14", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

# PCI device 0x1186:0x1300 (8139too)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:22:b0:ce:01:32", ATTR{type}=="1", KERNEL=="eth*", NAME="eth3"

# PCI device 0x1904:0x8139 (sc92031)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:e0:4e:20:a8:fb", ATTR{type}=="1", KERNEL=="eth*", NAME="eth5"

# PCI device 0x1904:0x8139 (sc92031)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:e0:a0:00:8a:eb", ATTR{type}=="1", KERNEL=="eth*", NAME="eth4"

# PCI device 0x10ec:0x8169 (r8169)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="d8:5d:4c:80:75:6a", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

ใ้ห้ใช้คำสั่ง ethtool eth3 แทน

เช่น

Settings for eth3:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Advertised auto-negotiation: Yes
        Speed: 1000Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 0



        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: pumbg
        Wake-on: g
        Current message level: 0x00000033 (51)
        Link detected: yes

       apt-get update
       apt-get install ethtool


http://www.hadyaiinternet.com/index.php?topic=1876.0 รวมขั้นตอน ต่อจาก การติดตั้ง Ubuntu8.10 MultiWAN Server (แยกเน็ต แยกเกมส์)


deb http://mirror1.ku.ac.th/ubuntu intrepid main restricted universe multiverse
deb http://mirror1.ku.ac.th/ubuntu intrepid-updates main restricted universe multiverse
deb http://mirror1.ku.ac.th/ubuntu intrepid-security main restricted universe multiverse

deb-src http://mirror1.ku.ac.th/ubuntu intrepid main restricted universe multiverse
deb-src http://mirror1.ku.ac.th/ubuntu intrepid-updates main restricted universe multiverse
deb-src http://mirror1.ku.ac.th/ubuntu intrepid-security main restricted universe multiverse


ข้างล่างของเดิม
deb http://old-releases.ubuntu.com/ubuntu intrepid main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu intrepid-updates main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu intrepid-security main restricted universe multiverse

deb-src http://old-releases.ubuntu.com/ubuntu intrepid main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu intrepid-updates main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu intrepid-security main restricted universe multiverse


nano /etc/crontab

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

จะเห็นว่ามีตัวแปรของ MTU เข้ามาเกี่ยวข้องด้วย

ตัวนี้แหละ คือสิ่งสำคัญ ในการทำให้เน็ตวิ่งได้อย่างไม่มีปัญหา

ก่อนอื่น ทำความเข้าในกันก่อนว่า MTU คืออะไร และต้องกำหนดอย่างไร

(ลองเข้า www.google.co.th แล้วพิมพ์ MTU ดูครับ  อย่าหัวเราะกะผลลัพธ์ที่ได้นะครับ)

MTU นั้น คือ maximum transmission unit (MTU)

ตามมาตรฐานของ PPPoE แล้ว ค่า MTU จะเท่ากับ 1492 นั่นก็คือ 1500-8

(โดย 1500 คือ MTU ของ Eternet และ 8 คือ Header ของ PPP)

แต่ในบางครั้ง ISP มีระบบเครือข่ายที่หลากหลาย ไม่ว่าจะเป็น ATM, Tunnel, MPLS ระหว่างทางในการรับส่งข้อมูล

จึงทำให้ค่า MTU มีการเปลี่ยนแปลง ในบางครั้งเมื่อเราใช้ MTU ที่ 1492 จึงมีปัญหากับบาง Host เป็นต้น

ดังนั้น ในการตั้งค่า MTU ที่เหมาะสมนั้น จะมีค่า 1492,1480,1470,1464,1452,1440,1432 เป็นต้น

ขึ้นอยู่กับเครือข่ายที่อยู่ระหว่างทาง

ถ้าหากใช้งานที่ MTU 1492 แล้วมีปัญหากับบาง Host เช่น www.icafeplus.net เป็นต้น

ให้ปรับลดค่า MTU ลง ตามลำดับที่ให้ไป ยิ่งปรับลด ก็ทำให้ประสิทธิภาพลดลงด้วย ให้ใช้ค่าที่มากที่สุดที่เป็นไปได้

วิธีการปรับแต่งค่า MTU สามารถกำหนดได้ในตอนทำการติดตั้ง

หรือแก้ไขในไฟล์  /etc/ppp/peers/

dsl-link1 , dsl-link2

ลองทดสอบกันดูนะครับ

วิธีหาค่า MTU ที่เหมาะสมก็คือลองเปิด DOS Prompt ขึ้นมาแล้วพิมพ์ ping -f -l 1472 thelordofwireless.com (ลบ เอฟ ลบ แอลเล็ก นะครับ)

ทีนี้ถ้าคุณเห็นข้อความที่บอกว่า Packet needs to be fragmented but DF set. ก็แสดงว่าค่า 1472 มากไปครับ ก็ให้ -10 เป็น ping -f -l 1462 thelordofwireless.com

ลอง -10 ไปเรื่อยๆจน ไม่มี Error แบบนี้ครับ ก็ให้เพิ่มที่ละ 1 จนถึงค่าก่อนที่จะมี Error ครับ ตอนผมทดลองดู ค่าสุดท้ายที่ผมได้ก่อน Error คือ 1444 ครับ ก็ให้เอาค่าสุดท้าย +28 ก็จะได้เป็นค่า MTU

สูงสุดที่คุณจะใช้ได้ครับ

ก่อนอื่น ให้
#poff dsl-link1
#poff dsl-link2 ก่อนทั้ง 2 เส้น
แล้วย้ายสายตามไป
เปลี่ยน user pass ของ adsl ในไฟล์ 3 ไฟล์นี้
#/etc/ppp/pap-secrets
#/etc/ppp/chap-secrets
#/etc/ppp/peers/dsl-link1 และ /etc/ppp/peers/dsl-link2
หลังจากนั้น สั่งต่อโมเดม คำสั่ง
#pon dsl-link1 และ
#pon dsl-link2 เสร็จคับ ไม่ต้อง boot

/etc/network/interfaces

# This file is auto generate by xxxkung script

# Loopback Interface
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

auto eth1
iface eth1 inet manual

auto eth2
iface eth2 inet manual

auto eth3
iface eth3 inet manual

auto eth4
iface eth4 inet manual

auto eth5
iface eth5 inet manual
=========================
นื่องจากมีหลายท่าน ถามผมมาว่า จะวางระบบในร้านเป็น Gigabit ควรใช้ Switch หรืออุปกรณ์ยี่ห้อไหนดี  อันนี้เป็นคำถามที่

ยอดฮิตมากที่ถามมา ผมก็ตอบตามตรงนะครับ แบ่ง Gigabit Switch ออกเป็น 3 กลุ่มใหญ่ ๆ ด้วยกัน คือ

1. L2 Unmanage Gigabit Switch
2. L2 Manage Gigabit Switch
3. L3 Manage Gigabit Switch

ซึ่งส่วนใหญ่แล้ว ที่เราซื้อมาใช้ ๆ กัน จะเป็นแบบที่ 1 คือ L2 Unmanage Gigabit Switch เนื่องด้วยเหตุผลที่ว่า อีก 2 แบบนั้น

ราคาสูงมาก ๆ 

สำหรับแบบแรกนั้น L2 Unmanage Gigabit Switch ในแต่ละยี่ห้อนั้น คุณภาพก็ไม่ได้แตกต่างกันมากนัก แต่สิ่งสำคัญอยู่ที่ว่า

เราสามารถเปิดการใช้งานของฟังก์ชั่นต่าง ๆ ที่มีอยู่ใน Switch ตัวนั้น มาใช้งานได้หรือไม่ และอุปกรณ์ประกอบอื่น ๆ มันรอง

รับกับฟังก์ชั่นนั้นหรือไม่ ทั้งในตัวสาย ตัว LAN Card หรือ LAN Onboard รวมกระทั่ง การปรับแต่ง Windows ให้รองรับ

ด้วย ซึ่งเป็นสิ่งสำคัญมากกว่า

ในหัวข้อแรก จะพูดถึง การทดสอบประสิทธิภาพของ Gigabit Network กันก่อน เอาแบบง่าย ๆ นะครับ

ไฟล์ DVD สัก 4GB ถ้าทำการก๊อปปี้ผ่านเครือข่าย Gigabit จะใช้เวลานานเท่าไหร่

ในทางทฤษฏี เครือข่าย Gigabit จะรับส่งข้อมูลในปริมาณ 1Gigabit/sec หรือ 1,000,000,000 bit ต่อวินาที หรือ

หนึ่งพันล้านบิตต่อวินาที หรือ เทียบเป็น Byte ก็จะได้เท่ากับ 125MB/sec 

ดังนั้นไฟล์ขนาด 4GB จะใช้เวลา 4096/125 = ประมาณ 33 วินาที

แต่ในทางปฏิบัตินั้น จะใช้เวลาประมาณ 2 นาทีกว่า ทำไมถึงเป็นเช่นนั้น (ลองทดสอบกันดูนะครับ)

เราจะทราบได้อย่างไรว่า Gigabit Network ของเรา วิ่งด้วยความเร็วเท่าไหร่

การก๊อปปี้ไฟล์ก็เป็นการทดสอบอย่างหนึ่ง แต่อาจจะเกิดการหน่วงเพราะความเร็วของ HDD ไม่พอ

ผมเลยแนะนำ Tools ตัวนึง ที่ใช้ในการทดสอบความเร็วในการรับส่งข้อมูลผ่านเครื่อข่าย เรียกว่า iperf

สำหรับบน Windows สามารถ Download ได้ที่ 

http://www.noc.ucf.edu/Tools/Iperf/iperf.exe

สำหรับบน Ubuntu สามารถ ใช้คำสั่ง apt-get install iperf  ได้เลย

วิธีการทดสอบก็คือ ให้ติดตั้งตัวโปรแกรมทดสอบทั้งสองฝั่ง  ฝั่งนึงให้เป็น Server อีกฝั่งให้เป็น Client แล้วใช้คำสั่งทดสอบ

ดังนี้

ฝั่ง Server ใช้คำสั่ง    iperf  -s

ฝั่ง Client ใช้คำสั่ง    iperf  -c  แล้วตามด้วย ip ฝั่ง server 

จะได้ผลลัพธ์ออกมาเช่น

ฝั่ง Server

C:\>iperf.exe -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 8.00 KByte (default)
------------------------------------------------------------
[1860] local 192.168.200.100 port 5001 connected with 192.168.200.101 port 1742
[ ID] Interval       Transfer     Bandwidth
[1860]  0.0-10.0 sec   242 MBytes   202 Mbits/sec


ฝั่ง Client

C:\>iperf.exe -c 192.168.200.100
------------------------------------------------------------
Client connecting to 192.168.200.100, TCP port 5001
TCP window size: 8.00 KByte (default)
------------------------------------------------------------
[1912] local 192.168.200.101 port 1742 connected with 192.168.200.100 port 5001
[ ID] Interval       Transfer     Bandwidth
[1912]  0.0-10.0 sec   242 MBytes  202 Mbits/sec


================================
เพิ่มเติมให้ครับ
iftop -i ethX  ใช้ดู traffic ในวงขา Lan ครับ อันนี้จะมี IP ของในร้านให้เห็นครับว่าเค้าใช้งาน host ไหนอยู่
iftop -i ppp10X ใช้ดู traffic ในวงขา WAN ครับ อันนี้จะมี IP หรือ host ที่เรามีการใช้งาน Internet ให้เห็น
(X คือเลขของสายที่เราต้องการดู)


=============


iptraf
==============
ping -c 5 -I ppp101 203.144.244.1
=======================


 tail -f /var/log/messages
================







root@ubuntu:/# ls /etc/ppp/peers
dsl-link1  dsl-link2  dsl-link3  dsl-link4  provider
=====================

ไม่มีความคิดเห็น:

แสดงความคิดเห็น