A. 列舉linux系統中的四種主要網路配置文件,並說明其作用
linux網路配置有以下幾種:
1、使用netconfig然後回車,就會出現配置界面;
配置完以後需要重啟服務,命令為:service
network
restart
2、ifconfig
eth0(網路介面名稱)
ip地址
netmask
子網掩碼
如:ifconfig
eth0
192.168.1.2
netmask
255.255.255.0
此命令僅在當前系統有效,重啟後將按照網路介面配置文件的內容配置網路介面屬性。
加入參數-d,重啟後仍有效,
如:ifconfig
-d
eth0
192.168.1.2
netmask
255.255.255.0
3.還可以網路介面的配置文件進行配置,該目錄位於「/etc/sysconfig/network-scripts/」
如:#vi
/etc/sysconfig/network-scripts/ifcfg-eth0
就可以進行配置啦!
以上配置完成後,都需要重啟服務生效,
#service
network
restart
4、就是通過dhcp獲取,
#dhclient就可以獲取到ip地址啦,前提是必須有dhcp伺服器才可以。
B. Linux中的網路配置怎麼設置
設置網路地址:
cat/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=statics
HWADDR=00:0C:29:13:D1:6F
ONBOOT=yes
TYPE=Ethernet
IPADDR=192.168.0.212
NETMASK=255.255.255.0
BOOTPROTO=statics :表示使用靜態IP地址
ONBOOT=yes:表示開機時,啟動這個網卡。
取動態IP地址地址
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
設置好IP地址,現在還不能生效哦,要重新啟動網卡才可以。
Ifconfig <網路介面名稱> network <子網掩碼>
例:# ifconfig eth0 192.168.1.222 netmask 255.255.255.0
註:手工配置linux網路只限於臨時使用,配置不保存。
擴展:# ifconfig eth0:1 10.0.0.1 netmask 255.0.0.0 一塊網卡配置多個子ip地址。
# ifconfig eth0 hw ether MAC地址 修改網卡的mac地址,
#/etc/rc.d/init.d/networkstart啟動network
#/etc/rc.d/init.d/networkstop停止network
#/etc/rc.d/init.d/networkrestart重啟network
主機名稱配置文件,修改主機名
/etc/sysconfig/network
例:# vi /etc/sysconfig/network 使用vi編輯器打開主機名配置文件。
#vi/etc/sysconfig/network
NETWORKING=yes 網路是否可用。
HOSTNAME=xxxx xxxx為新設置的主機名。
本地主機名稱解析文件
/etc/hosts
Hosts 和 DNS具有類似的主機名稱解析功能
域名伺服器配置文件
/etc/resolv.conf
最多可以設置3行,前面的生效 有些看似很復雜的操作,可能幾個命令就解決了,建議多學習些Linux命令
C. 修改linux的網路配置方式有哪些步驟
在實際配置時,可以採用四種方法:
其一,基於控制面板法;
其二,基於X的linuxconf法;
三,基於Web瀏覽器的linuxconf法;
其四,手工使用命令法。
二、基於控制面板法
Linux的控制面板中的Network Configuration提供了易於掌握的集成化配置環境。首先檢查在安裝Red Hat Linux時是否安裝了控制面板。
# rpm –gagrep control
如果安裝了控制面板,則屏幕上顯示:contrl –panel-3.7-7
如果未安裝這個軟體包,則鍵入如下命令:
# rpm –i /mnt/cdrom/Red Hat /rpms /usercfg-3.5-6.i386.rpm
單擊控制面板窗口中的Network Configuration按鈕,出現網路配置器窗口(如圖1所示)。
1)Names標簽
該標簽提供了四個方面的信息:
(1) Hostname(主機名)
包括機器名和機器所在的完整域名。格式為:localhost.local domain,例如,www.jbxue.com,其中www為本地機主名字,jbxue.com為本機所在域名。
(2) Domain(域名)
機器所在的完整域名,即為主機名中的「。」後面部分。這里輸入:linux.net
(3) Search for hostnames in additional domains(在其它域名中尋找主機名)
該項可不填。
(4) Nameservers(名字伺服器)
即 DNS,這項列出了向網路提供域名服務的計算機名單,每行一個。若要提供名字伺服器清單,則應給出ISP服務商提供的域名伺服器的IP地址。例如:163.1.1.4、10.55.0.33 。
2) Hosts標簽
該標簽提供計算機的主機表,主機表放在/etc/host文件中。單擊Hosts標簽,並單擊「Add」按鈕,彈出對話框(圖2)。
主機表文件包含機器名,IP地址及計算機替換名字。如果在小型網中,沒有域名伺服器,則主機表應包含所在網路中所有機器的名字和各自的IP地址。在連網的機器上至少有IP和name兩項。對該表的操作包括增加(Add),編輯(edit),刪除(remove)等操作。
首先編輯本地機項目,在IP欄輸入163.1.5.125,Name欄輸入www.jbxue.com,在nickname 欄中,可以<輸入計算機的替換名稱,如www0,並用空格分隔這些替換名稱。 >
3)Interfaces標簽
這是一個網路介面的配置標簽。在預設情況,該表中提供一個lo項目(本地回環設備),該項目不要刪除,它是Linux網路工作時必需具備的一個項目,對應的IP地址為127.0.0.1。
如果用戶現欲通過乙太網卡接入Internet時,請選中表中eth0項目(註:第一個網卡設備名為 eth0, 第二個為eth1,依次類推)。單擊「Remove」按鈕,刪除掉,然後單擊「Add」按鈕,彈出介面類型對話框(圖3)。
請選中「Ethernet」單選項,單擊「OK」按鈕,出現edit Ethernet/Bus interface對話框。該對話框包含以下內容:
(1) IP段 輸入網卡物理地址,即本機IP地址。如163.1.5.125。
(2) Netmask欄位 輸入子網掩碼,如255.255.0.0。
(3) Network欄位 自動給出163.1.5.0。
(4) Broadcast欄位 自動給出
(5) Activate interface at boot time單選項 在每次啟動時,激活介面,以便使用網路,建議選擇該項。
(6) Allow any user to (de)activate interface選項 允許任一用戶激活或關閉網路介面。對於PPP之類的撥號介面中,每個用戶都要建立網路連接,因此可以選擇該項。對於乙太網連接的用戶,則不必選擇該項。
(7) Interface configuration protocol選項 介面配置協議。指定伺服器向工作站提供網路操作所需信息。可讓本機在每次激活介面時從伺服器取得配置。它有none,BOOT和DHCP三個選項。一般選擇「none」。
4)Routing標簽
該標簽用於配置路由。告訴計算機如何把某些數據傳到網路上的目標主機。如果網路使用預設網關,則只要指出預設網關IP地址以及本機網卡etho。
對以上四個標簽操作完成後,單擊網路配置器窗口中的「save」按鈕,存檔退出。
三、基於X的linuxconf法
首先由root用戶登錄Linux系統,在Gnome環境中,單擊腳印按鈕,指向「system」,選擇「control-panel」子項,以便啟動控制面板,然後單擊System Configuration圖標。或者單擊腳印按鈕,指向「system」選項,選擇linuxconf選項),出現linuxconf在xterm中的工作界面(見圖4)。
⑴打開「Networking / Client tasks / Basic host Information」分支,選擇Host name標簽,輸入主機名字;選擇Adaptor 1標簽,選中「enable」選項,表示能夠使用第一個網卡;選擇配置方式為Manual;然後分別填寫:Primary name + domain(主機名。域名,如:lgx.linux.net)、IP address(主機的IP地址,如:163.1.5.125)、Net mask(子網掩碼,如:255.255.0.0)、Net device(網路設備名eth0)、Kernel mole(內核模塊,如果是ne2000的網卡,那麼應輸入ne)、 I/O port(I/O埠地址,如0x300)、Irq>(中斷號,如3)等選項。
⑵打開「Networking / Client tasks / Name Server Specification(DNS)」分支,彈出Resolve configuration對話框,選中「DNS is required for normal operation」;然後填寫:Default domain (預設域名)和Nameserver1(第一個DNS伺服器的IP地址,如:163.1.1.4;在下一行,還可填寫第二個DNS伺服器的IP地址,如10.55.0.33)選項。
⑶打開「Config / Networking / Routing and gateways」選項,彈出的Defaults對話框,在Default gateway欄位填寫預設的網關IP值,如:163.1.1.254,並選中「enable routing」選項。
⑷接受以上寫入值,激活並退出。
註:在提示符「#」下,若執行linuxconf,則在xterm終端下配置方法與之相類似。
四、基於Web的Linuxconf法
在Red Hat Linux 6.0中,linuxconf也可工作在Web瀏覽器環境,操作方法是:
⑴在gnome-linuxconf對話框中,打開「Config / Networking / Misc / Linuxconf network access」分支。
⑵在對話框中輸入任何允許使用Linuxconf的計算機的主機名,包括用戶主機名字。
⑶選擇「Accept」按鈕,並按空格鍵,單擊「Quit」按鈕。
⑷啟動Netscape瀏覽器,在URL欄鍵入:http://:98/ 其中,必選項hostname應換成用戶計算機的主機名。
⑸選擇瀏覽器頁面底部的「Start」按鈕,在彈出的口令驗證框中,分別輸入root和相應的口令,如果口令正確,
則進入如圖5所示的Linuxconf工作環境。
⑹點擊config框下的「Networking」選項,彈出Network Configurator頁面,在其中的Client tasks框內,點擊「Basic host information」、「Name server specification(DNS)」、「Routing and gateways」,分別輸入主機信息、名字伺服器及路由和網關等信息。
⑺操作完成後,存檔退出。
五、手工使用命令法
手工使用命令法是基於乙太網卡已裝入的情況下,編輯配置文件來配置網路的方法。具體步驟如下:
⑴ 編輯/etc/rc.d/rc.local文件
在該文件中加入類似下列各行:
#配置第一個乙太網卡eth0的IP地址,子網掩碼,UP起激活作用
/sbin/ifconfig,etho 163.1.5.125 netmask 255.255.0.0 UP
#配置並激活回環設備lo
/sbin/ifconfig lo 127.0.0.1 UP
/sbin/route add –host 127.0.0.1 lo
#讓Linux將本地網的信息發送到eth0介面
/sbin/route add –net 163.1.5.125 netmask 255.255.0.0 eth0
#指定訪問遠程網路的預設網關,假定預設網關的IP地址為163.1.1.254
/sbin/route default gw 163.1.1.254 eth0
⑵ 編輯/etc/resdv.conf文件
該文件作用是設置名稱伺服器。可加入下列內容。
#指定本機域名為jbxue.com。
Domain jbxue. com
#域名稱伺服器(DNS),可以是本地網,也可以是遠程網上的。按nameserver的順序#逐一查找。若未找到,則Linux放棄尋找。
Nameserver 163.1.1.4
Nameserver 10.55.0.33
⑶ 編輯/etc/hosts.conf文件
設置主機文件表。可加入如下行:
order hosts,bind
multi on
163.1.5.125 www.jbxue.com www
第一行表示:查找名稱時,首先檢查本地主機文件(hosts),然後按/etc/resolv.conf所指定的Nameservers順序查找。
第三行列出主機IP地址、主機名和別名。
對/etc/rc.d/rc.local,/etc/hosts.conf,/etc/resolv.conf三個文件編輯後,必須重新啟動機器。
五、結束語
綜上所述,只要採用其中的任意一種方法,定義主機名字、主機表、網路介面設備及路由等參數,配置好Linux乙太網,就能接入Internet,享受Internet提供的服務。
D. linux下如何配置網路
1、首先我們用root用戶登錄linux桌面系統。
E. linux系統,如何設置最大網路連接數量
linux設置最大網路連接數量有很多中方法:
1、直接用ulimit命令
ulimit -n 8192
2、修改/proc/sys/net/ipv4/ip_conntrack_max為8192
或者是/etc/sysctl.conf中加入ip_conntrack_max=8192
3、請首先編輯/usr/include/bits/types.h 文件,改變__FD_SETSIZE 的值:
#define _ _FD_SETSIZE 8192
下一步,使用這個命令增加內核文件描述符的限制:
# echo 8192 > /proc/sys/fs/file-max
最後,增加進程文件描述符的限制,在即將編譯squid 的同一個shell 里執行:
sh# ulimit -Hn 8192
F. linux伺服器如何配置上網
Apache是運行在Linux操作系統上的頭號Web伺服器。很多小地方都可以用來調整Apache的性能,並降低它對系統資源的影響。其中一個就是調整內存使用率,當然達到這一目的可能還是需要花點功夫的。 例如,通過ps來確定httpd線程的內存使用率,可以輸入下面的命令: # ps -U apache -u apache u USERPID %CPU %MEMVSZRSS TTYSTAT START TIME COMMAND apache130670.05.3 149704 54504 ?SOct071:53 /usr/sbin/httpd -f /etc/httpd/conf/httpd.conf -DAPACHE2 ... 上面這段輸出顯示了單個httpd進程使用了50 MB的RSS(駐留集大小)內存(或者非交換物理內存),以及149 MB的VSZ(虛擬)內存。這當然在很大程度上取決於你在Apache里載入和運行的模塊數量。這決不是一個固定的數字。由於這個數字里還包含了共享庫包,所以不是100%的准確。我們可以認為RSS數字的一半是httpd線程真正使用的內存數,這可能還有點保守,但是離我們的目的已經非常接近了。 在本文里,我們假設每個httpd進程都在使用了27 MB內存。然後,你需要確定可以讓httpd真正使用的內存數。根據運行在機器上的其他進程,你可能希望要求50%的物理內存都供Apache使用。在一個裝有1GB內存的系統上,就有512MB的內存可以被劃分為多個27MB的內存,也就是大約19個並發的httpd內存。有些人堅持認為每個httpd 線程「真正」使用大約5MB的內存,所以從理論上講你可以把512MB的內存劃分出102個並發進程供Apache使用(要記住的是,除非你的網站需要極其巨大的流量,否則這種情況是非常罕見的)。 在默認狀態下,Apache會分配最大256個並發客戶端連接,或者256個進程(每一個都對應一個請求)。按照這種設置,一個流量巨大的網站會在頃刻間崩潰(即使你假設每個進程佔用5MB內存,那也需要1.3GB的內存來滿足請求的數量)。如果不採取其它措施,系統會通過硬碟來嘗試使用交換空間以處理它無法在物理內存中完成的任務。 其他可以調整的項目包括KeepAlive、KeepAliveTimeout和MaxKeepAliveRequests等設置。可以放在httpd.conf文件里的推薦設置有: ServerLimit 128MaxClients 128KeepAlive OnKeepAliveTimeout 2MaxKeepAliveRequests 100 通過將KeepAliveTimeout從15秒減到2秒,可以增加MaxClients命令;19太小,而128要好得多。通過減少進程存活的秒數,你可以在相同的時間內允許更多的連接。 當然,如果沒有真正的測試在背後支持,數字就是毫無意義的,這就是ab的作用之所在。使用ab對Apache配置文件(MaxClients等於 256、ServerLimit等於256、KeepAliveTimeout等於15)進行調整,使其能夠滿足1000個請求(100個連續請求並發產生)的調整方法如下。(在執行測試的時候要確保伺服器上有一個終端打開以觀察系統的負載。) $ ab -n 1000 -c 100 -k http://yoursite.com/index.php 現在把上面的伺服器設置改為更加保守的設置,重新啟動Apache,試著再次測試(總是從遠程計算機上進行,而不是本機)。 在這里的測試中,不同的設置導致執行所消耗的時間產生了一倍的差距(分別為27.8s和16.8s),但是負載的平均值為0.03和0.30。這可能會使得你的網站變得稍慢,但是會確保它不會在高負載的情況下崩潰。還要記住的是,你將需要進行多次測試,以便取得一個平均值。 使用ab是測試調整Apache配置的一個極佳方法,應該在你每次做出影響性能的更改時使用它。
G. Linux 應用 網路配置
網路信息查看
設置網路地址:
cat /etc/sysconfig/network-scripts/ifcfg-eth0
你將會看到:
DEVICE=eth0
BOOTPROTO=statics
HWADDR=00:0C:29:13:D1:6F
ONBOOT=yes
TYPE=Ethernet
IPADDR=192.168.0.212
NETMASK=255.255.255.0
BOOTPROTO=statics :表示使用靜太IP地址。
ONBOOT=yes:表示開機時,啟動這個網卡。
取動態IP地址地址
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
設置好IP地址,現在還不能生效哦,要重新啟動網卡才可以。
Ifconfig <網路介面名稱> network <子網掩碼>
例:# ifconfig eth0 192.168.1.222 netmask 255.255.255.0
註:手工配置linux網路只限於臨時使用,配置不保存。
擴展:# ifconfig eth0:1 10.0.0.1 netmask 255.0.0.0 一塊網卡配置多個子ip地址。
# ifconfig eth0 hw ether MAC地址 修改網卡的mac地址,
# /etc/rc.d/init.d/network start 啟動network
# /etc/rc.d/init.d/network stop 停止network
# /etc/rc.d/init.d/network restart 重啟network
主機名稱配置文件,修改主機名
/etc/sysconfig/network
例:# vi /etc/sysconfig/network 使用vi編輯器打開主機名配置文件。
# vi /etc/sysconfig/network
NETWORKING=yes 網路是否可用。
HOSTNAME=xxxx xxxx為新設置的主機名。
本地主機名稱解析文件
/etc/hosts
Hosts 和 DNS具有類似的主機名稱解析功能
域名伺服器配置文件
/etc/resolv.conf
最多可以設置3行,前面的生效
查看網路介面信息
1.了解linux中的網路介面設備
$/sbin/ifconfig 查看所有活動網路介面信息,其中包括一個lo環回埠。
2.查看指定網路介面的信息
$/sbin/ifconfig <網路介面名稱> 查看指定介面信息。
3.查看系統中所有網路介面的信息
$/sbin/ifconfig –a 查看所有介面信息,包括非活動狀態介面。
註:普通用戶查看網路介面信息時,需要在命令前加「/sbin」,而管理員卻不用。這是由於命令搜索路徑的原因,可以通過「$echo $PATH」查看。
查看網關地址和路由信息
1、查看主機路由信息
#/route
顯示當前linux主機中的路由表信息。
#/route |grep default
在route命令的顯示結果中以「default」開始的行顯示了,主機的默認網關地址,將route命令和grep命令組合,使用過濾route命令的顯示結果只顯示默認網關地址。
2.測試與其它主機的網路鏈接
$ping 目的主機地址
使用ping命令測試與其它主機的網路鏈接。ctrl+C終止。
$ping –c <測試數據包數量> <目的主機地址>
使用ping命令發送指定數量的數據包進行網路鏈接測試。
$使用ping命令進行網路鏈接測試的技巧。
註:當ping命令測試不成功時並不能判斷當前主機到目標主機的連接是斷開的,因為有很多因素,(如網路防火牆等)可以導致網路連接正常時主機之間無法ping通。
3、測試與其它主機的網路鏈接路徑
$traceroute <目的主機地址>
traceroute命令顯示當前主機與目的主機之間經過的所,有網路節點的地址,以及當前主機到每個中間結點的連接狀態。
查看主機名稱信息
1、查看當前主機名稱
$Hostname 查看當前的主機名。
2、使用dns伺服器查詢域名
$Nslookup
交互模式:通常用於對DNS伺服器進行測試
直接模式:用於查詢某個域名對應的ip地址
使用網路命令進行網路設置
網路設置的方法
1、DHCP網路配置
$Dhclient 使用dhclient命令可以從DHCP伺服器中申請新的網路配置應用到當前主機。
註:DHCP伺服器通常提供給DHCP客戶端最基本的網路配置信息,包括:介面ip地址,默認網關,DNS
伺服器地址。
2、手工網路配置
網路介面ip地址和子網掩碼
默認網關地址
當前主機名稱
DNS伺服器地址
Ip地址配置命令
Ifconfig <網路介面名稱> network <子網掩碼>
例:# ifconfig eth0 192.168.1.222 netmask 255.255.255.0
註:手工配置linux網路只限於臨時使用,配置不保存。
擴展:# ifconfig eth0:1 10.0.0.1 netmask 255.0.0.0 一塊網卡配置多個子ip地址。
# ifconfig eth0 hw ether MAC地址 修改網卡的mac地址,
路由配置命令
1、刪除默認網關路由
$Route del default gw <默認網關地址>
2、添加默認網關路由
$Route add default gw <默認網關地址>
例:#route add default gw 192.168.1.1
主機名稱配置命令
# hostname 123
將主機暫時名稱改為123。
DNS域名解析
Nslookup
>server
顯示linux系統中使用的DNS伺服器地址,也可臨時設置生效。
修改配置文件進行網路設置
使用工具進行網路設置
# Netconfig 圖形界面設置網路,重啟network後生效。
界面中需要填寫的內容:
主機網路介面的ip地址。
網路介面的子網掩碼。
默認網關地址。
主DNS伺服器的ip地址。
網路服務啟動腳本
/etc/init.d/network 從新啟動才能生效
擴展:# /etc/rc.d/init.d/network start 啟動network
# /etc/rc.d/init.d/network stop 停止network
# /etc/rc.d/init.d/network restart 重啟network
網路介面配置文件
/etc/sysconfig/network-scripts/ifconfg-*
DEVICE=eth0 網卡編號
ONBOOT=yes 開機時是否啟動網卡。
BOOTPROTO=static 靜態ip或者DHCP動態獲取。
IPADDR=192.168.1.163 ip
NETMASK=255.255.255.0 掩碼
GATEWAY=192.168.1.1 網關
以下為動態獲取方式:
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
停止和啟動指定的網路介面
單個網路介面的配置進行修改後
Ifdown 網路介面名稱 停止某個網路介面。
Ifup 網路介面名稱 開啟某個網路介面。
註:單個網路介面的配置文件進行修改後,不必每次都從新啟動network服務使配置文件生效,可用以上命令。
擴展:對網路介面操作:
# ifconfig eth0 down 停止eth0介面
# ifconfig eth0 up 開啟eth0介面
可以連續使用
Ifdown eth0 ; ifup eth0
主機名稱配置文件
/etc/sysconfig/network
例:# vi /etc/sysconfig/network 使用vi編輯器打開主機名配置文件。
NETWORKING=yes 網路是否可用。
HOSTNAME=xxxx xxxx為新設置的主機名。
本地主機名稱解析文件
/etc/hosts
Hosts 和 DNS具有類似的主機名稱解析功能
域名伺服器配置文件
/etc/resolv.conf
最多可以設置3行,前面的生效。
H. 如何設置虛擬機中linux的網路配置
如果你的XXX卡沒被內核支持,又怕自己編譯的內核會造成系統損壞就可以試試這個方法嘍 ^_^ vmware三種網路連接上網設置: 1.bridge : 默認使用vmnet0 將虛擬機的ip設置與主機同網段未使用ip,其餘與主機相同: 例如主機ip是10.70.5如果你的XXX卡沒被內核支持,又怕自己編譯的內核會造成系統損壞就可以試試這個方法嘍 ^_^
vmware三種網路連接上網設置:
1.bridge :
默認使用vmnet0
將虛擬機的ip設置與主機同網段未使用ip,其餘與主機相同:
例如主機ip是10.70.54.31,設置虛擬機ip為10.70.54.22。netmask,broadcast,gateway,dns都與主機相同即可實現虛擬機<--->主機 虛擬機<---->互聯網 通信。
2.nat :
默認使用vmnet8
將虛擬機設置成使用dhcp方式上網,windows下選擇"自動獲取ip",linux下開啟dhcp服務即可
也可以手動設置:
ip設置與vmnet8同網段,gateway設置成vmnet8的gateway(/etc/vmware/vmnet8/nat/nat.conf)中可以查到vmnet8的gateway,通常是xxx.xxx.xxx.2。
netmask,broadcast設置與vmnet8相同,dns設置與主機相同。
例如 vmnet8 ip:172.16.249.1 gw :172.16.249.2
虛擬機設置: ip :172.16.249.100 gw: 172.16.249.2
3.host-only :
默認使用vmnet1
將虛擬機ip設置與vmnet1同網段,gateway設置成vmnet1的ip,其餘設置與vmnet1相同,dns設置與主機相同
例如 vmnet1 ip :172.16.245.1
虛擬機設置: ip :172.16.245.100 gateway :172.16.245.1
這樣就實現了虛擬機<--->主機 通信,但是 虛擬機<--->互聯網 仍無法通信
虛擬機與互聯網通信:
1.開啟主機路由功能
2.設定iptables,使主機成為一台nat server
1. echo 1 >/proc/sys/net/ipv4/ip_forward 這樣就主機就具有了路由功能
2. iptables -t nat -A POSTROUTING -o eth0 -s 172.16.245.0/24 -j MASQUERADE
這條規則意思是將來自172.16.245.0/24封包的來源ip偽裝成eth0的ip,實現虛擬機與互聯網通信
如果網路介面是ppp+或pppoe則需要修改成-o pppoe
當然-s 172.16.245.0/24 也要根據實際情況修改
qemu兩種上網方式:
user mode network :
這種方式實現虛擬機上網很簡單,類似vmware里的nat,qemu啟動時加入-user-net參數,虛擬機里使用dhcp方式,即可與互聯網通信,但是這種方式虛擬機與主機的通信不方便。
tap/tun network :
這種方式要比user mode復雜一些,但是設置好後 虛擬機<-->互聯網 虛擬機<-->主機 通信都很容易
這種方式設置上類似vmware的host-only,qemu使用tun/tap設備在主機上增加一塊虛擬網路設備(tun0),然後就可以象真實網卡一樣配置它.
首先內核中支持tap/tuns設備:
Device Drivers --->
Networking support --->
[M] Universal TUN/TAP device driver support
如果當前內核沒有支持,可以重新只編譯相應模塊加入,方法很簡單:
將當前內核配置文件cp到內核源碼目錄下:
[root@LFS ~]#cp /boot/config-[kernel-version] /usr/src/linux
[root@LFS ~]#cd /usr/src/linux
配置內核,將TUN/TAP選擇模塊(M),如上所示:
[root@LFS ~]#make menuconfig
重新只編譯模塊(M),不編譯核心(*)支持的東東:
[root@LFS ~]#make moles
編譯好後在/usr/src/linux/drivers/net下可以找到tun.ko:
[root@LFS net]#ls -l /usr/src/linux/drivers/net/tun.ko
-rw-r--r-- 1 root root 11116 Mar 23 20:29 /usr/src/linux/drivers/net/tun.ko
[root@LFS net]#
將它cp到當前內核的模塊目錄的相應位置:
[root@LFS net]#cp /usr/src/linux/drivers/net/tun.ko /lib/moles/`uname -r`/kernel/drivers/net
重新建立模塊依賴關系:
[root@LFS net]#depmod
現在就可以載入它了 :
[root@LFS net]#modprobe tun
檢查一下:
[root@LFS net]#lsmod |grep tun
tun 8704 0
[root@LFS net]#
OK. 成功不重新編譯整個內核加入特殊模塊支持
如果你的xx卡不被內核支持,又可以編譯成模塊,自己怕重新編譯內核後出問題就可以用這個辦法只編譯自己需要的模塊,然後手動安裝到相應位置,再載入它。
這樣編譯速度要也比編譯整個內核快,不會對系統有任何損害,就可以使用上XX卡嘍。^_^
要注意三點:
1.內核源碼必須與當前內核版本完全一致,否則編譯出的模塊是不能用的。
2.注意只make moles(編譯模塊),沒有make moles_install(自動安裝模塊到/lib/moles下)
3.載入新編譯的模塊前必須先運行depmod,否則modprobe找不到它
其實使用當前內核配置文件(/boot/config-[kernel-version]),只加入自己需要的模塊,不做任何其他改,make moles_install應該也不會有問題的。
不過最穩妥的辦法還是手動安裝它,控制權在自己手裡更踏實嘛 :-)
OK,轉回qemu上網問題
如果使用udev管理設備(通常2.6.x內核的發行版都已經使用udev),當modprobe tun後就會自動建立/dev/net目錄,並創建出tun設備,做好相關鏈接:
[root@LFS net]#ls -l /dev/net/tun
lrwxrwxrwx 1 root root 6 Mar 25 15:35 /dev/net/tun -> ../tun
[root@LFS net]#
如果很不幸,你沒看到它,就需要自己手動做這些工作了
I. 如何配置Linux網卡
linux下配置網路步驟方法:
配置動態IP
1、在終端命令窗口中輸入setup,就會彈出如下窗口。
[root@wgods ~]# setup
拓展資料:
1、網卡上面裝有處理器和存儲器(包括RAM和ROM)。網卡和區域網之間的通信是通過電纜或雙絞線以串列傳輸方式進行的。而網卡和計算機之間的通信則是通過計算機主板上的I/O匯流排以並行傳輸方式進行。因此,網卡的一個重要功能就是要進行串列/並行轉換。由於網路上的數據率和計算機匯流排上的數據率並不相同,因此在網卡中必須裝有對數據進行緩存的存儲晶元。
2、在安裝網卡時必須將管理網卡的設備驅動程序安裝在計算機的操作系統中。這個驅動程序以後就會告訴網卡,應當從存儲器的什麼位置上將區域網傳送過來的數據塊存儲下來。網卡還要能夠實現乙太網協議。
3、網卡並不是獨立的自治單元,因為網卡本身不帶電源而是必須使用所插入的計算機的電源,並受該計算機的控制。因此網卡可看成為一個半自治的單元。當網卡收到一個有差錯的幀時,它就將這個幀丟棄而不必通知它所插入的計算機。當網卡收到一個正確的幀時,它就使用中斷來通知該計算機並交付給協議棧中的網路層。當計算機要發送一個IP數據包時,它就由協議棧向下交給網卡組裝成幀後發送到區域網。
4、隨著集成度的不斷提高,網卡上的晶元的個數不斷的減少,雖然各個廠家生產的網卡種類繁多,但其功能大同小異。
參考資料:網路:網卡
J. linux怎麼配置網路連接
1、首先我們打開XShell工具,點擊頂部的打開選項,