udhcpcieth0
『壹』 linux 3.0內核下udhcpc動態獲取IP,一直處於sending discover狀態。
我是主路由通過華為路由器再分一個網段出來連接到我的arm開發板,一般情況下是可通過udhcp -i eth0 自動獲取到IP地址的,但出現過兩次,一直凳升列印下面的信息:
Sending discover...
Sending discover...
Sending discover...
...
然後就無法進入系統了侍御;
不過我重啟華為路由器就可以了,不知道什麼老粗岩時候還再出現這種情況!
『貳』 red flag linux怎麼鏈接無線網
Redhat中配置無線網路使用iwconfig。
iwconfig是Linux Wireless Extensions(LWE)的棗模用戶層配置工具之一。LWE是Linux下對無線網路配置的工具,
包括內核的支持、用戶層敬敗配置凳稿緩工具和驅動介面的支持三部分。目前很多無線網卡都支持LWE,而且主流的Linux發
布版本,比如Redhat Linux、Ubuntu Linux都已經帶了這個配置工具。
用法: iwconfig interface [essid {NN|on|off}]
[nwid {NN|on|off}]
[mode {managed|ad-hoc|...}
[freq N.NNNN[k|M|G]]
[channel N]
[ap {N|off|auto}]
[sens N]
[nick N]
[rate {N|auto|fixed}]
[rts {N|auto|fixed|off}]
[frag {N|auto|fixed|off}]
[enc {NNNN-NNNN|off}]
[power {period N|timeout N}]
[retry {limit N|lifetime N}]
[txpower N {mW|dBm}]
[commit]
說明:iwconfig是LWE最主要的工具,可以對無線網卡的大部分參數進行配置。
參數:
essid:設置無線網卡的ESSID(Extension Service Set ID)。通過ESSID來區分不同的無線網路,正常情況下
只有相同ESSID的無線站點
才可以互相通訊,除非想監聽無線網路。其後的參數為雙引號括起的ESSID字元串,或者是any/on/off
,如果ESSID字元串中包含
any/no/off,則需要在前面加"--"。
示例:
#ifconfig eth0 up/down 啟動/禁用無線網卡
#iwconfig eth0 essid any 允許任何ESSID,也就是混雜模式
#iwconfig eth0 essid "My Network" 設置ESSID為"My Network"
#iwconfig eth0 essid -- "ANY" 設置ESSID為"ANY"
#iwconfig eth0 key [1] 設置key id
#iwconfig eth0 key 1231231234 設置password為1231231234
#iwpriv eth0 auth 2 設置認證方式為Shared
#iwpriv eth0 enc 2 設置加密方式為WEP
#iwlist eth0 scanning 搜索周圍存在的無線網路
iwconfig eth0 nwid AB34
iwconfig eth0 nwid o
iwconfig eth0 nickname 「My Linux Node」
iwconfig eth0 txpower off
iwconfig eth0 rts 250
iwconfig eth0 rts off
iwconfig eth0 mode Managed
iwconfig eth0 mode Ad-Hoc
iwconfig eth0 freq 2422000000
iwconfig eth0 freq 2.422G
iwconfig eth0 channel 3
iwconfig eth0 channel auto
iwconfig eth0 ap 00:60:1D:01:23:45
iwconfig eth0 ap any
iwconfig eth0 ap off
iwconfig eth0 rate 11M
iwconfig eth0 rate auto
iwconfig eth0 rate 5.5M auto
iwconfig eth0 txpower 15
iwconfig eth0 txpower 30mW
iwconfig eth0 txpower auto
iwconfig eth0 txpower off
iwconfig eth0 sens -80
iwconfig eth0 sens 2
iwconfig eth0 retry 16
iwconfig eth0 retry lifetime 300m
iwconfig eth0 retry min limit 8
nwid: Network ID,只用於pre-802.11的無線網卡,802.11網卡利用ESSID和AP的MAC地址來替換nwid,現在
基本上不用設置。
示例:
#iwconfig eth0 nwid AB34
#iwconfig eth0 nwid off
nick: Nickname,一些網卡需要設置該參數,但是802.11協議棧、MAC都沒有用到該參數,一般也不用設置。
示例:
#iwconfig eth0 nickname "My Linux Node"
mode:設置無線網卡的工作模式,可以是
Ad-hoc:不帶AP的點對點無線網路
Managed:通過多個AP組成的網路,無線設備可以在這個網路中漫遊
Master:設置該無線網卡為一個AP
Repeater:設置為無線網路中繼設備,可以轉發網路包
Secondary:設置為備份的AP/Repeater
Monitor:監聽模式
Auto:由無線網卡自動選擇工作模式
示例:
#iwconfig eth0 mode Managed
#iwconfig eth0 mode Ad-Hoc
freq/channel:設置無線網卡的工作頻率或者頻道,小於1000的參數被認為是頻道,大於10000的參數被認為
是頻率。頻率單位為Hz,
可以在數字後面附帶k, M, G來改變數量級,比如2.4G。頻道從1開始。使用lwlist工具可以查
看無線網卡支持的頻率
和頻道。參數off/auto指示無線網路自動挑選頻率。
注意:如果是Managed模式,AP會指示無線網卡的工作頻率,因此該設置的參數會被忽略。Ad-hoc模式
下只使用該設定的頻率初始無線網路,如果加入已經存在的Ad-hoc網路則會忽略該設置的頻率參數。
示例:
#iwconfig eth0 freq 2422000000
#iwconfig eth0 freq 2.422G
#iwconfig eth0 channel 3
#iwconfig eth0 channel auto
ap:連接到指定的AP或者無線網路,後面的參數可以是AP的MAC地址,也可以是iwlist scan出來的標識符。如
果是Ad-hoc,則連接到
一個已經存在的Ad-hoc網路。使用off參數讓無線網卡不改變當前已連接的AP下進入自動模式。any/auto
參數,無線網卡自動選擇
最好的AP。
注意:如果無線信號低到一定程度,無線網路會進入自動選擇AP模式。
示例:
#iwconfig eth0 ap 00:60:1D:01:23:45
#iwconfig eth0 ap any
#iwconfig eth0 ap off
rate/bit:如果無線網卡支持多速率,則可以通過該命令設置工作的速率。小於1000的參數由具體的無線網卡
驅動定義,一般是傳輸速
率的索引值,大於1000的為速率,單位bps,可以在數字後面附帶k, M, G來指定數量級。auto參數
讓無線網卡自動選擇速率
fixed參數讓無線網卡不使用自動速率模式。
示例:
#iwconfig eth0 rate 11M
#iwconfig eth0 rate auto
#iwconfig eth0 rate 5.5M auto //自動選擇5.5M以下的速率
txpower:如果無線網卡支持多發射功率設定,則使用該參數設定發射,單位為dBm,如果指定為W(毫瓦),只
轉換公式為:
dBm=30+log(W)。參數on/off可以打開和關閉發射單元,auto和fixed指定無線是否自動選擇發射功
率。
示例:
#iwconfig eth0 txpower 15
#iwconfig eth0 txpower 30mW
#iwconfig eth0 txpower auto
#iwconfig eth0 txpower off
sens:設置接收靈敏度的下限,在該下限之下,無線網卡認為該無線網路信號太差,不同的網卡會採取不同的
措施,一些現代的無線網卡
會自動選擇新的AP。正的參數為raw data,直接傳給無線網卡驅動處理,一般認為是百分比。負值表示
dBm值。
示例:
#iwconfig eth0 sens -80
#iwconfig eth0 sens 2
retry:設置無線網卡的重傳機制。limit 『value』 指定最大重傳次數;lifetime 『value』指定最長重試時間
,單位為秒,可以附帶m和u來
指定單位為毫秒和微秒。如果無線網卡支持自動模式,則在limit和lifetime之前還可以附加min和max
來指定上下限值。
示例:
#iwconfig eth0 retry 16
#iwconfig eth0 retry lifetime 300m
#iwconfig eth0 retry min limit 8
rts:指定RTS/CTS握手方式,使用RTS/CTS握手會增加額外開銷,但如果無線網路中有隱藏無線節點或者有很
多無線節點時可以提高性能。
後面的參數指定一個使用該機制的最小包的大小,如果該值等於最大包大小,則相當於禁止使用該機制。
可以使用auto/off/fixed
參數。
示例:
#iwconfig eth0 rts 250
#iwconfig eth0 rts off
frag:設置發送數據包的分片大小。設置分片會增加額外開銷,但在雜訊環境下可以提高數據包的到達率。一
般情況下該參數小於最大包
大小,有些支持Burst模式的無線網卡可以設置大於最大包大小的值來允許Burst模式。還可以使用
auto/fixed/off參數。
示例:
#iwconfig eth0 frag 512
#iwconfig eth0 frag off
key/enc[ryption]:設置無線網卡使用的加密密鑰,此處為設置WEP模式的加密key,如果要使用WPA,需要
wpa_supplicant工具包。
密鑰參數可以是 XXXX-XXXX-XXXX-XXXX 或者 XXXXXXXX 格式的十六進制數值,也可以是s:xxxxxx的
ASCII字元。如果在密鑰參數之前
加了[index],則只是設置該索引值對應的密鑰,並不改變當前的密鑰。直接指定[index]值可以設置當
前使用哪一個密鑰。指定on/
off可以控制是否使用加密模式。open/restricted指定加密模式,取決於不同的無線網卡,大多數無線
網卡的open模式不使用加密且
允許接收沒有加密的數據包,restricted模式使用加密。可以使用多個key參數,但只有最後一個生效
。
WEP密鑰可以是40bit,用10個十六進制數字或者5個ASCII字元表示,也可以是128bit,用26個十六
進制數字或者13個ASCII字元表
示。
示例:
#iwconfig eth0 key 0123-4567-89
#iwconfig eth0 key [3] 0123-4567-89
#iwconfig eth0 key s:password [2]
#iwconfig eth0 key [2]
#iwconfig eth0 key open
#iwconfig eth0 key off
#iwconfig eth0 key restricted [3] 0123456789
#iwconfig eth0 key 01-23 key 45-67 [4] key [4]
power:設置無線網卡的電源管理模式。period 『value』 指定喚醒的周期,timeout 『value』指定進入休眠的
等待時間,這兩個參數之前可以
加min和max修飾,這些值的單位為秒,可以附加m和u來指定毫秒和微秒。off/on參數指定是否允許電
源管理,all/unicast/multicast
指定允許喚醒的數據包類型。
示例:
#iwconfig eth0 power period 2
#iwconfig eth0 power 500m unicast
#iwconfig eth0 power timeout 300u all
#iwconfig eth0 power off
#iwconfig eth0 power min period 2 power max period 4
commit:提交所有的參數修改給無線網卡驅動。有些無線網卡驅動會先緩存無線網卡參數修,使用這個命令來
讓無線網卡的參數修改生效。不過一般不需要使用該命令,因為無線網卡驅動最終都會是參數的修改生效,一般
在debug時會用到。
-------------------------------------------------------------------------
iwlist eth1 scan 搜索無線網路:
顯示搜到的網路(此處只顯示一個):
eth1 Scan completed :
Cell 01 - Address: 00:04:E2:E3:04:FC
ESSID:"ap_demo"
Mode:Managed
Frequency:2.437 GHz
Quality:0/0 Signal level=-61 dBm Noise level=-96 dBm
Encryption key:on
Bit Rate:1 Mb/s
Bit Rate:2 Mb/s
Bit Rate:5.5 Mb/s
Bit Rate:11 Mb/s
Bit Rate:6 Mb/s
Bit Rate:9 Mb/s
Bit Rate:12 Mb/s
Bit Rate:18 Mb/s
Bit Rate:24 Mb/s
Bit Rate:36 Mb/s
Bit Rate:48 Mb/s
Bit Rate:54 Mb/s
Cell 02 ……
---------------------------------------------------------------------------
設置板子的channel
iwlist eth1 channel 11
-----------------------------------------------------------------------------
設置模式:
iwconfig eth1 mode managed
通過MAC 設置AP:
iwconfig eth1 ap 00:0A:EB:CA:79:B0
連接到WEP on 的AP:
iwconfig eth1 key s:12345 等效於 iwconfig eth1 enc 3132333435(12345的hex值) (為什麼
AP64bit的口令是40bit呢)
iwconfig eth1 key on
iwconfig eth1 essid sychip_demo
斷開WEP:
iwconfig eth1 enc off
查看IP:
ifconfig eth1
設置IP:
ifconfig eth1 10.3.1.74
把IP: 129.158.215.204 , netmask: 255.255.255.0分配給rh0,
# ifconfig rh0 129.158.215.204 netmask 255.255.255.0
獲取IP;
ifconfig eth1 dhcp start (從eth1走,不需要ip即可dhcp)
udhcpc -i eth1
udhcpc --help
路由處理:
若要刪除以 10. 起始的 IP 路由表中的所有路由,請鍵入:
route delete 10.*
route del default
route add -net 10.3.0.0 netmask 255.255.0.0 eth1 (eth1獲得IP之前,使用此命令顯示:No such
device)
『叄』 剛剛安裝了linux red hat 9.0採用的NAT網路方式,ip是dhcp自動分配。ping127.0.0.1 ping不通是怎麼回事
由於要使用網路通訊,所以不可碰稿避免的要用到dhcp。理想的網路通訊方式是下面3種都要支持:
1,接入已有網路。這便要求可以作為dhcp客戶端,自動獲取Ip。
2,作為DHCP伺服器,動態分配IP。
3,指定固定IP
第3種情況沒有什麼好說的,簡單說下前2種情況。
使用步驟:
(1)在內核的網路指圓項裡面把DHCP配置上,
Networking --->
Networking support
Networking options --->
Packet socket //添加.配置CONFIG_PACKET
[ * ] IP: DHCP support //添加
[ * ] Network packet filtering (replaces ipchains) ---> //添加,後面子選項可不選,配置CONFIG_NETFILTER
說明:若沒選 Packet socket, [ * ] Network packet filtering (replaces ipchains) --->選項,在執行udhcpc命令時出現如下錯誤:
[root@(none) /]# udhcpc -f
udhcpc (v1.13.2) started
eth0: link up, 100Mbps, full-plex, lpa 0x41E1
udhcpc: socket: Address family not supported by protocol
(2)在busybox裡面把[*]udhcp server(udhcpd)
[*]udhcp client(udhcpc)都選上。
udhcpd就是終端設備作為DHCP伺服器 ;udhcpc就是終端設備作為DHCP客戶端
若busybox沒編譯相應選項,也可從網上下載相應文件,用arm-linux交叉編譯得到udhcpd,udhcpc命令到usr/sbin下就可以了。
1>編譯Busybox,使make menuconfig,添加以下選項:
Networking Utilities --->
udhcp Server/Client --->
[ ] udhcp Server (udhcpd) //在此不作服務端,故不選。生成udhcpd命令
udhcp Client (udhcpc) //生成udhcpc命令
[ ] Lease display utility (mpleases)
[ ] Log udhcp messages to syslog (instead of stdout)
[ ] Compile udhcp with noisy debugging messages
若busybox沒編譯相應選項,也可從網上下載相應文件,用arm-linux交叉編譯得到udhcpd,udhcpc命令到usr/sbin下就可以了。
說明:有種方法說是從網上下的udhcp_0.9.8cvs20050303.orig.tar.gz文件,解壓後修改Makefile文件,
在19行添加CROSS_COMPILE=arm-linux-
注釋12行的COMBINED_BINARY=1,
否則不生成udhcpc命令。
註:使用0.9.8版本的udhcp貌似也不行,重新編譯Busybox1.9.2版本。
2>使用Busybox下的simple.script,/usr/share/udhcpc/下,並重命笑逗孝名為default.script,修改default.script中RESOLV_CONF="/etc/resolv.conf"為RESOLV_CONF="/tmp/resolv.conf"
說明:從網上下了幾個default.script貌似無法使用,提示無法找到default.script文件,使用上面的方法較好。由於使用Cramfs文件系統,etc目錄不可寫,運行udhcp.c時會提示無法創建resolv.conf
3>將生成的udhcpc復制到開發板/sbin下,在控制台下運行udhcpc即可,很快就可以從DHCP SERVER獲得IP地址。但是有個問題,開發板可以獲得IP地址,在路由器里也可以看到分配地址了,問題是一使用PING命令,不管是PC 機PING 開發板,還是開發板PING PC 機,就會造成開發板死機。試了好多方法,檢查ROUTE,檢查ARP,修改Default.script ,始終無法解決。
1>使用udhcpc時 ,就可以直接把simple.script拿來使用,busybox裡面默認的目錄文件是/usr/share/udhcpc/default.script(改下名)
可以查看下幫助
# udhcpc --help
#udhcpc -f
udhcpc 之後需要關閉網卡,之後需要送重開網卡使用命令
ifconfig eth0 down
ifconfig eht0 up
之後就能正常工作了,
如果無法PING本機,設置回環地址就可以了
ifconfig lo 127.0.0.1
/************PC上使用udhcpc*****************************
從使用的角度來說,無線網卡最好用DHCP動態獲取IP地址,在LINUX下使用DHCP獲取地址有幾種方法,在桌面機LINUX一種是配置網卡的啟動腳本。即修改/etc/sysconfig/networks-scripts/ifg-XXXX(後面是設備名)。如wlan0的設備就是 ifconfig-wlan0.第一塊網卡就是 ifg-eth0,
靜態IP的配置文件如下
DEVICE=eth0
BOOTPROTO=none
BROADCAST=192.168.0.255
IPADDR=192.168.0.146
NETMASK=255.255.255.0
NETWORK=192.168.0.0
ONBOOT=yes
USERCTL=no
PEERDNS=no
TYPE=Ethernet
如果用動態IP則修改成
DEVICE=eth0
BOOTPROTO=dhcp # 以後的配置均失效。
BROADCAST=192.168.0.255
IPADDR=192.168.0.146
NETMASK=255.255.255.0
NETWORK=192.168.0.0
ONBOOT=yes
USERCTL=no
PEERDNS=no
TYPE=Ethernet
然後ifconfig eth0 down ,再打開ifconfig eth0 up即可申請IP。
*****************************************************/
2> 使用udhcpd,同樣可以直接把busybox自帶的udhcpd.conf作為參考,按要求配置一下udhcpd.config文件。
可以查看下幫助
# udhcpd --help
運行的時候直接#udhcpd -fs /etc/udhcpd.conf
還有一個租約文件(udhcpd.leases)要簡要說說,使用udhcpd時會要求建立一個租約文件,按照提示創建一個就行了,它起什麼作用呢?就是為了記錄客戶端所獲得的IP,如果沒有租約文件,則會重新給客戶端分配一個新IP,如果有,則使用原先分配的IP。
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
另外,摘抄ifconfig用法文章
ifconfig 命令由超級用戶使用,用來配置所有的網路介面參數。也可以被用來重新定義一個介面的IP地址或其它的操作參數。
一、檢查網路介面
例如:
*檢查所有網路介面的狀態:
# ifconfig –a
lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST>; mtu 8232
inet 127.0.0.1 netmask ff000000
le0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST>;
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:6f
*檢查一個介面的狀態:
# ifconfig le0
le0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST>;
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:6f
各欄位含義:
lo0,le0——網路介面的設備名
Flags——網路介面狀態的數字表示方式,狀態變數已經在包中定義,將在後來討論。
MTU——MTU用來定義包的存儲片
Inet——介面的Internet 地址
netmask——掩碼應用於網路層包的輸入和輸出。掩碼被用來定義哪些值是用來表示網路地址的位。
Broadcast——廣播地址,用來發送信息到所有主機。
Ether——由ARP使用的乙太網地址(MAC)
—狀態段
UP——這個標志指出這個介面是開放的,可以發送和接收數據。
DOWN——相反的,這個標志指出這個介面是關閉的,也就是說,此時不能為主機發送和轉發包。
NOTRAILERS——這個標志指出了一個報文尾不包括以太幀的尾部。報文尾是在Berkerley Unix系統中使用的把信息頭加到包尾的一種方式。在Solaris2.x系統中已經不支持。
RUNNING——這個標志指出,該介面已經被系統識別。
MULTICAST——這表示介面支持多路傳送地址。
BROADCAST——這表示介面支持廣播地址。
二、網路地址配置
——解決網路介面故障
丟失,不完整,或不正確的配置網路介面參數,將會引起連接失敗。如:一個主機可能拒絕掛接(mount)遠程文件系統,拒絕發送和接收郵件,拒絕執行列印任務,如果一個主機的介面配置錯誤的話。
為了確保主機介面配置的正確,要檢查如下幾項:
所有的介面狀態是否為UP
IP地址是否正確
子網掩碼是否正確
廣播地址是否正確
——重新配置網路介面參數
* 允許一個網路介面(Enable):
# ifconfig le0 up
# ifconfig le0
le0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST>;
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:6f
*開放一個網路介面(Disable):
# ifconfig le0 down
# ifconfig le0
le0: flags=863<BROADCAST,NOTRAILERS,RUNNING,MULTICAST>; mtu 1500
inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:6f
*關閉一個網路介面(Close):
# ifconfig le0 unplumb
# ifconfig le0
ifconfig : SIOCGIFFLAGS:le0:no such interface
*打開一個網路介面(Open):
# ifconfig le0 plumb
# ifconfig le0
le0:flags=842<BROADCAST,RUNNING,MULTICAST>; mtu 1500
inet 0.0.0.0 netmask 0
ether 8:0:20:75:6e:6f
*設置一個IP地址,允許介面但不允許 trailers:
# ifconfig le0 inet 128.50.1.2 –trailers up
# ifconfig le0
le0: flags=842<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST>;
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:6f
*改變掩碼值和廣播值來正確的反映新的掩碼:
# ifconfig le0 netmask 255.255.255.0 broadcast +
# ifconfig le0
le0: flags=843<UP,BROADCAST,RUNNING,MULTICAST>; mtu 1500
inet 128.50.1.2 netmask ffffff00 broadcast 128.50.1.255
ether 8:0:20:75:6e:6f
*在正確的設置子網掩碼後改變所有的廣播地址:
# ifconfig –a
lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST>; mtu 8232
inet 127.0.0.1 netmask ff000000
le0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST>; mtu 1500
inet 128.50.1.5 netmask ffffff00 broadcast 128.50.255.255
ether 8:0:20:75:8b:59
le1: flags=842<BROADCAST,NOTRAILERS,RUNNING,MULTICAST>; mtu 1500
inet 128.50.3.6 netmask ffffff00 broadcast 128.50.255.255
ether 8:0:20:75:8b:59
# ifconfig –a broadcast +
# ifconfig –a
lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST>; mtu 8232
inet 127.0.0.1 netmask ff000000
le0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST>; mtu 1500
inet 128.50.1.5 netmask ffffff00 broadcast 128.50.1.255
ether 8:0:20:75:8b:59
le1: flags=842<BROADCAST,NOTRAILERS,RUNNING,MULTICAST>; mtu 1500
inet 128.50.3.6 netmask ffffff00 broadcast 128.50.3.255
ether 8:0:20:75:8b:59
『肆』 關於linux udhcpc 的問題
範例如下:
ddns-update-style interim; (其實沒有什麼作用,但是一定要寫)
subnet 192.168.1.0 netmask 255.255.255.0 { 開始定義要肢基信分配的網段
range 192.168.1.10 192.168.1.20; 定義要分配的地址范圍
option routers 192.168.1.1; 網關
options-domain-nameservers 218.19.50.64; DNS地歷輪址
default-lease-time 86400; 默認租約時間
max-lease-time 172800; 最大租約時間
}
host aa { 將要為一個主機名鋒譽是aa的主機分配固定IP地址
hardware ethernet 11:22:33:44:55:66; aa主機的MAC地址
fixed-address 192.168.1.10 給aa永遠都分配1.10這個地址。
}
『伍』 linux下如何設置擴展網卡的優先順序
在linux系統中,使用ifconfig命令給網口配置ip,系統會自動生成這個網卡的相關路由信息,可以使用命令route –n查看系統所有的路由信息,參數-n是不進行地址解析,如果不添加-n選項,route命令會根據/etc/resolv文件中配置的DNS伺服器進行地址解析,所以返回時間跟DNS伺服器的響應時間有關系:
系統自動生成eth0的路由信息
可以看到系統自動生成了201網段的路由信息,凡是201這個網段的數據包都會通過eth0這個網口。但是目前還沒有網關的信息,如果要通過eth0訪問外網,還需要添加默認網關,linux系統中可以通過命令ip route命令添加默認網關,命令格式為ip route add default via <gateway> dev <interface>:
eth0的路由信息
添加默認網關後的路由信息如上圖,其中Destination和Genmask為0.0.0.0的記錄表明這是系統默認網關,默認網關的意思是當要發送數據包的目標網路地址不在系統的路由記錄中時,系統會將該數據包通過默認網關對應的介面(網卡)發送出去,如果允許使用dhcp的話,還可以直接使用udhcpc命令,該命令會自動獲取ip並設置默認網關:
測試效果
路由信息在板卡重啟之後會消失,板卡上自帶乙太網可以通過英創公司提供的userinfo.txt配置文件來設置乙太網的ip和默認網關,或者設置為dhcp的方式。如果有擴展的wi-fi模塊則可以通過腳本或自己保存一個配置文件來實現載入網口後自動進行設置ip和網關。3G/4G網路是使用的ppp撥號,ppp會自動生成默認網關。
『陸』 udhcpc -q -i eth1; 是什麼意思
獲取如螞eth1網卡的動態ip
-q, --quit Quit after obtaining lease
-i是指定使用哪渣悉埋陸知個網路介面
『柒』 Linux如何設置wifi
ubuntu和fedora的話,都是在右上角的網路管理器里就可以配置了~很方便的
『捌』 red hat enterprise linux如何連接無線網路
Redhat中配置無線網路使用iwconfig。
iwconfig是Linux Wireless Extensions(LWE)的用戶層配置工具之一。LWE是Linux下對無線網敬敗絡配置的工具,
包括內核的支持、用戶層配置工具和驅動介面的支持三部分。目前很多無線網卡都支持LWE,而且主流的Linux發
布版本,比如Redhat Linux、Ubuntu Linux都已經帶了這個配置工具。
用法: iwconfig interface [essid {NN|on|off}]
[nwid {NN|on|off}]
[mode {managed|ad-hoc|...}
[freq N.NNNN[k|M|G]]
[channel N]
[ap {N|off|auto}]
[sens N]
[nick N]
[rate {N|auto|fixed}]
[rts {N|auto|fixed|off}]
[frag {N|auto|fixed|off}]
[enc {NNNN-NNNN|off}]
[power {period N|timeout N}]
[retry {limit N|lifetime N}]
[txpower N {mW|dBm}]
[commit]
說明:iwconfig是LWE最主要的工具,可以對無線網卡的大部分參數進行配置。
參數:
essid:設凳稿緩置無線棗模網卡的ESSID(Extension Service Set ID)。通過ESSID來區分不同的無線網路,正常情況下
只有相同ESSID的無線站點
才可以互相通訊,除非想監聽無線網路。其後的參數為雙引號括起的ESSID字元串,或者是any/on/off
,如果ESSID字元串中包含
any/no/off,則需要在前面加"--"。
示例:
#ifconfig eth0 up/down 啟動/禁用無線網卡
#iwconfig eth0 essid any 允許任何ESSID,也就是混雜模式
#iwconfig eth0 essid "My Network" 設置ESSID為"My Network"
#iwconfig eth0 essid -- "ANY" 設置ESSID為"ANY"
#iwconfig eth0 key [1] 設置key id
#iwconfig eth0 key 1231231234 設置password為1231231234
#iwpriv eth0 auth 2 設置認證方式為Shared
#iwpriv eth0 enc 2 設置加密方式為WEP
#iwlist eth0 scanning 搜索周圍存在的無線網路
iwconfig eth0 nwid AB34
iwconfig eth0 nwid o
iwconfig eth0 nickname 「My Linux Node」
iwconfig eth0 txpower off
iwconfig eth0 rts 250
iwconfig eth0 rts off
iwconfig eth0 mode Managed
iwconfig eth0 mode Ad-Hoc
iwconfig eth0 freq 2422000000
iwconfig eth0 freq 2.422G
iwconfig eth0 channel 3
iwconfig eth0 channel auto
iwconfig eth0 ap 00:60:1D:01:23:45
iwconfig eth0 ap any
iwconfig eth0 ap off
iwconfig eth0 rate 11M
iwconfig eth0 rate auto
iwconfig eth0 rate 5.5M auto
iwconfig eth0 txpower 15
iwconfig eth0 txpower 30mW
iwconfig eth0 txpower auto
iwconfig eth0 txpower off
iwconfig eth0 sens -80
iwconfig eth0 sens 2
iwconfig eth0 retry 16
iwconfig eth0 retry lifetime 300m
iwconfig eth0 retry min limit 8
nwid: Network ID,只用於pre-802.11的無線網卡,802.11網卡利用ESSID和AP的MAC地址來替換nwid,現在
基本上不用設置。
示例:
#iwconfig eth0 nwid AB34
#iwconfig eth0 nwid off
nick: Nickname,一些網卡需要設置該參數,但是802.11協議棧、MAC都沒有用到該參數,一般也不用設置。
示例:
#iwconfig eth0 nickname "My Linux Node"
mode:設置無線網卡的工作模式,可以是
Ad-hoc:不帶AP的點對點無線網路
Managed:通過多個AP組成的網路,無線設備可以在這個網路中漫遊
Master:設置該無線網卡為一個AP
Repeater:設置為無線網路中繼設備,可以轉發網路包
Secondary:設置為備份的AP/Repeater
Monitor:監聽模式
Auto:由無線網卡自動選擇工作模式
示例:
#iwconfig eth0 mode Managed
#iwconfig eth0 mode Ad-Hoc
freq/channel:設置無線網卡的工作頻率或者頻道,小於1000的參數被認為是頻道,大於10000的參數被認為
是頻率。頻率單位為Hz,
可以在數字後面附帶k, M, G來改變數量級,比如2.4G。頻道從1開始。使用lwlist工具可以查
看無線網卡支持的頻率
和頻道。參數off/auto指示無線網路自動挑選頻率。
注意:如果是Managed模式,AP會指示無線網卡的工作頻率,因此該設置的參數會被忽略。Ad-hoc模式
下只使用該設定的頻率初始無線網路,如果加入已經存在的Ad-hoc網路則會忽略該設置的頻率參數。
示例:
#iwconfig eth0 freq 2422000000
#iwconfig eth0 freq 2.422G
#iwconfig eth0 channel 3
#iwconfig eth0 channel auto
ap:連接到指定的AP或者無線網路,後面的參數可以是AP的MAC地址,也可以是iwlist scan出來的標識符。如
果是Ad-hoc,則連接到
一個已經存在的Ad-hoc網路。使用off參數讓無線網卡不改變當前已連接的AP下進入自動模式。any/auto
參數,無線網卡自動選擇
最好的AP。
注意:如果無線信號低到一定程度,無線網路會進入自動選擇AP模式。
示例:
#iwconfig eth0 ap 00:60:1D:01:23:45
#iwconfig eth0 ap any
#iwconfig eth0 ap off
rate/bit:如果無線網卡支持多速率,則可以通過該命令設置工作的速率。小於1000的參數由具體的無線網卡
驅動定義,一般是傳輸速
率的索引值,大於1000的為速率,單位bps,可以在數字後面附帶k, M, G來指定數量級。auto參數
讓無線網卡自動選擇速率
fixed參數讓無線網卡不使用自動速率模式。
示例:
#iwconfig eth0 rate 11M
#iwconfig eth0 rate auto
#iwconfig eth0 rate 5.5M auto //自動選擇5.5M以下的速率
txpower:如果無線網卡支持多發射功率設定,則使用該參數設定發射,單位為dBm,如果指定為W(毫瓦),只
轉換公式為:
dBm=30+log(W)。參數on/off可以打開和關閉發射單元,auto和fixed指定無線是否自動選擇發射功
率。
示例:
#iwconfig eth0 txpower 15
#iwconfig eth0 txpower 30mW
#iwconfig eth0 txpower auto
#iwconfig eth0 txpower off
sens:設置接收靈敏度的下限,在該下限之下,無線網卡認為該無線網路信號太差,不同的網卡會採取不同的
措施,一些現代的無線網卡
會自動選擇新的AP。正的參數為raw data,直接傳給無線網卡驅動處理,一般認為是百分比。負值表示
dBm值。
示例:
#iwconfig eth0 sens -80
#iwconfig eth0 sens 2
retry:設置無線網卡的重傳機制。limit 『value』 指定最大重傳次數;lifetime 『value』指定最長重試時間
,單位為秒,可以附帶m和u來
指定單位為毫秒和微秒。如果無線網卡支持自動模式,則在limit和lifetime之前還可以附加min和max
來指定上下限值。
示例:
#iwconfig eth0 retry 16
#iwconfig eth0 retry lifetime 300m
#iwconfig eth0 retry min limit 8
rts:指定RTS/CTS握手方式,使用RTS/CTS握手會增加額外開銷,但如果無線網路中有隱藏無線節點或者有很
多無線節點時可以提高性能。
後面的參數指定一個使用該機制的最小包的大小,如果該值等於最大包大小,則相當於禁止使用該機制。
可以使用auto/off/fixed
參數。
示例:
#iwconfig eth0 rts 250
#iwconfig eth0 rts off
frag:設置發送數據包的分片大小。設置分片會增加額外開銷,但在雜訊環境下可以提高數據包的到達率。一
般情況下該參數小於最大包
大小,有些支持Burst模式的無線網卡可以設置大於最大包大小的值來允許Burst模式。還可以使用
auto/fixed/off參數。
示例:
#iwconfig eth0 frag 512
#iwconfig eth0 frag off
key/enc[ryption]:設置無線網卡使用的加密密鑰,此處為設置WEP模式的加密key,如果要使用WPA,需要
wpa_supplicant工具包。
密鑰參數可以是 XXXX-XXXX-XXXX-XXXX 或者 XXXXXXXX 格式的十六進制數值,也可以是s:xxxxxx的
ASCII字元。如果在密鑰參數之前
加了[index],則只是設置該索引值對應的密鑰,並不改變當前的密鑰。直接指定[index]值可以設置當
前使用哪一個密鑰。指定on/
off可以控制是否使用加密模式。open/restricted指定加密模式,取決於不同的無線網卡,大多數無線
網卡的open模式不使用加密且
允許接收沒有加密的數據包,restricted模式使用加密。可以使用多個key參數,但只有最後一個生效
。
WEP密鑰可以是40bit,用10個十六進制數字或者5個ASCII字元表示,也可以是128bit,用26個十六
進制數字或者13個ASCII字元表
示。
示例:
#iwconfig eth0 key 0123-4567-89
#iwconfig eth0 key [3] 0123-4567-89
#iwconfig eth0 key s:password [2]
#iwconfig eth0 key [2]
#iwconfig eth0 key open
#iwconfig eth0 key off
#iwconfig eth0 key restricted [3] 0123456789
#iwconfig eth0 key 01-23 key 45-67 [4] key [4]
power:設置無線網卡的電源管理模式。period 『value』 指定喚醒的周期,timeout 『value』指定進入休眠的
等待時間,這兩個參數之前可以
加min和max修飾,這些值的單位為秒,可以附加m和u來指定毫秒和微秒。off/on參數指定是否允許電
源管理,all/unicast/multicast
指定允許喚醒的數據包類型。
示例:
#iwconfig eth0 power period 2
#iwconfig eth0 power 500m unicast
#iwconfig eth0 power timeout 300u all
#iwconfig eth0 power off
#iwconfig eth0 power min period 2 power max period 4
commit:提交所有的參數修改給無線網卡驅動。有些無線網卡驅動會先緩存無線網卡參數修,使用這個命令來
讓無線網卡的參數修改生效。不過一般不需要使用該命令,因為無線網卡驅動最終都會是參數的修改生效,一般
在debug時會用到。
-------------------------------------------------------------------------
iwlist eth1 scan 搜索無線網路:
顯示搜到的網路(此處只顯示一個):
eth1 Scan completed :
Cell 01 - Address: 00:04:E2:E3:04:FC
ESSID:"ap_demo"
Mode:Managed
Frequency:2.437 GHz
Quality:0/0 Signal level=-61 dBm Noise level=-96 dBm
Encryption key:on
Bit Rate:1 Mb/s
Bit Rate:2 Mb/s
Bit Rate:5.5 Mb/s
Bit Rate:11 Mb/s
Bit Rate:6 Mb/s
Bit Rate:9 Mb/s
Bit Rate:12 Mb/s
Bit Rate:18 Mb/s
Bit Rate:24 Mb/s
Bit Rate:36 Mb/s
Bit Rate:48 Mb/s
Bit Rate:54 Mb/s
Cell 02 ……
---------------------------------------------------------------------------
設置板子的channel
iwlist eth1 channel 11
-----------------------------------------------------------------------------
設置模式:
iwconfig eth1 mode managed
通過MAC 設置AP:
iwconfig eth1 ap 00:0A:EB:CA:79:B0
連接到WEP on 的AP:
iwconfig eth1 key s:12345 等效於 iwconfig eth1 enc 3132333435(12345的hex值) (為什麼
AP64bit的口令是40bit呢)
iwconfig eth1 key on
iwconfig eth1 essid sychip_demo
斷開WEP:
iwconfig eth1 enc off
查看IP:
ifconfig eth1
設置IP:
ifconfig eth1 10.3.1.74
把IP: 129.158.215.204 , netmask: 255.255.255.0分配給rh0,
# ifconfig rh0 129.158.215.204 netmask 255.255.255.0
獲取IP;
ifconfig eth1 dhcp start (從eth1走,不需要ip即可dhcp)
udhcpc -i eth1
udhcpc --help
路由處理:
若要刪除以 10. 起始的 IP 路由表中的所有路由,請鍵入:
route delete 10.*
route del default
route add -net 10.3.0.0 netmask 255.255.0.0 eth1 (eth1獲得IP之前,使用此命令顯示:No such
device)