Linux的有线网络 无线网络连接配置与解决方案

使用虚拟机的三种网络连接方式
bridged(桥接模式) 当前网络可以分配多个IP(比如连接的路由器),这时PC 和虚拟机各有一个IP
NAT(网络地址转换模式) 当前网络只给PC分配一个IP(比如校园网) 这时PC和虚拟机共用一个IP
host-only(主机模式) 没有连接外网 用主机模式PC和虚拟机上系统也可以进行内部网络通信

设置开机自动连接

cd /etc/NetworkManager/system-connetcions 这个目录下有你连接过的各种网络
sudo vim 选择某一个打开
autoconnetc = true这个参数决定是否自动连接

ubuntu 重启网卡方法

查看网卡信息: ifconfig
设定一个网卡IP:ifconfig eth1 192.168.1.10 netmask 255.255.255.0
重启网卡使设定生效:sudo /etc/init.d/networking restart
重启NetworkManager sudo service network-manager restart
用ubuntu的系统——>系统管理——>网络的网络设置
关闭网卡 ifdown eth0
开启网卡 ifup eth0
重启网卡,优点是可以指定网卡,不影响其他网络接口

有时候 ping unknown host问题
修改DNS设置的配置文件 /etc/resolv.conf

nameserver 127.0.1.1
service networking restart

有时候网络管理的Network-manager的图标不见了,重启网卡和Network 或者在Ubuntu软件中心中重新安装Network(nerwork-maager-gnome)

桌面版的网络管理有两种策略

1. NetworkManager

sudo vim /etc/NetworkManager/NetworkManager.conf 

[main]
plugins=ifupdown,keyfile
dns=dnsmasq

no-auto-default=00:0C:29:C2:1F:D7,

[ifupdown]
managed=false

默认情况是managed=false 即/etc/network/interfaces 列出 的设定,故 NetworkManager 就不会去管理。

2. network/interfaces

sudo  vim /etc/network/interfaces

auto lo
iface lo inet loopback

默认情况这里只有测试网络lo ,要想在interface管理其他类型的网络,在下面配置即可,前提是NetworkManager.conf 中managed=false,不然这里不会起效。

添加配置/etc/network/interfaces 文件

以太网 动态配置 or 静态配置
auto eth0
iface eth0 inet dhcp

auto eth0
iface eth0 inet static
  address 192.168.0.42
  network 192.168.0.0
  netmask 255.255.255.0
  broadcast 192.168.0.255
  gateway 192.168.0.1

无线网络配置 WiFi

auto wlan0
iface wlan0 inet dhcp
  
auto wlan0
iface wlan0 inet dhcp
  wpa-ssid “TP-LINK_8D0B8A”
  wpa-psk “12345678”

最常用的两种方式是DHCP 和静态IP

  • auto是给ifup做识别用的,当我们使用ifup -a来打开网络设备的时候(init里面启动网卡的方式,以及networking start,都是使用ifup -a),ifup会找这些auto的项来进行操作。

  • iface后面是logical interfaces的名字,如果我们没有使用过maping,那这里的名字就是物理设备的名字;在设备名字之后的,是这个接口使用的address family,inet或inetv6。最后的static是静态IP的意思,如果需要DHCP,把static换成DHCP就可以了。

  • 从iface下一行起,就是具体这一个interface的参数设置了;格式没有缩进也是可以的,只是为了看起来清晰,但是,具体哪一个接口的设置参数,必须是跟在它的iface之后的。上面就是一些常见的设置项,应该不用过多解释。

另外,除了常见的loopback、static和dhcp外,网口的method还可以是以下几种(具体自己了解下吧):

1、manual,如果不是在默认这些启动方式行列,可以用manual方式,然后在随后的up,或者down里面定义我们如何来操作它;后面有一个例子。

2、bootp,boot protocol是无盘工作站启动时使用的协议,它向host发送请求,得到ip以及启动镜像让后把自己启动起来。

3、ppp,point to point protocol是一种数据链路层协议,被多种物理网络采用,常被ISP用作网络接入控制。

4、wvdial,操作猫来完成ppp拨号的机制。

无线网卡的解决方案

首先应该安装相应的无线网卡驱动
使用ifconfig命令,发现没有wlan口,但是使用


  1. sudo lshw -numeric -class network
  2. sudo ifconfig -a
    就可以找到wlan0口

设置无线网络
编辑/etc/network/interfaces文件,将wlan添加到其中:
vim /etc/network/interfaces
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_config.conf (ubuntu Server的配置 )
重新启动计算机

无线网卡的 STA & AP模式设置

无线网卡通常有两种模式,一种是我们最常用的作为一个无线接入点(STA模式),去连接无线路由,接入网络。
还有一种模式是可以作为一个AP热点,让其他的设备来连接,从而建立通信。
正常的无线网卡,只要安装好驱动,按照上面NetworkManager或者 interface两种配置方法中的任意一种,即可接入网络。
这里着重介绍一下,如何把无线网卡配置为AP模式,让其他设备接入

1. 需要借助工具 hostapd udhcpd

sudo apt-get install hostapd udhcpd

hostapd是一个带加密功能的无线接入点(AP)程序,是Linux操作系统上构件无线接入点的一个比较方便的工具,支持IEEE 802.11协议和IEEE 802.1X/WPA/WPA2/EAP/RADIUS加密。
DHCP 是动态主机配置协议(Dynamic Host Configuration Protocol)动态处理工作站IP地址的配置,用DHCP租约和预置的IP地址相联系,DHCP租约提供了自动在TCP/IP网络上安全地分配和租用IP地址的机制,实现IP地址的集中式管理

2. 配置DHCP

sudo vim /etc/udhcpd.conf
# This is the range of IPs that the hostspot will give to client devices.
start 192.168.2.100 
end 192.168.2.200

# The device uDHCP listens on.
interface wlan0 
remaining yes
# The DNS servers client devices will use (if routing through the ethernet link).
opt dns 8.8.8.8 4.2.2.2 

opt subnet 255.255.255.0
opt router 192.168.2.1 # The Onboard Computer's IP address on wlan0 which we will set up shortly.
opt lease 864000    # 10 day DHCP lease time in seconds
sudo vim /etc/default/udhcpd
注释
#DHCPD_ENABLED="no"

3. 配置一个静态IP

sudo vim /etc/network/interfaces
auto wlan0
iface wlan0 inet static
address 192.168.2.1
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
wireless-power off

4. 创建 WPA-secured 网络

sudo vim /etc/hostapd/hostapd.conf  #没有就新建

auth_algs=1   #定采用哪种认证算法
channel=6   # Channel to use   change frequency
hw_mode=g   # 指定802.11协议
ieee80211n=1 # 802.11n assuming your device supports it
ignore_broadcast_ssid=0
interface=wlan0   #接入点设备名称
wpa=2               #加密方式是WPA/WPA2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
# Change the to the proper driver
driver=nl80211
# Change these to something else if you want
ssid=TK1    #热点名
wpa_passphrase=TK1_5400 #wifi密码
sudo vim /etc/default/hostapd
DAEMON_CONF="/etc/hostapd/hostapd.conf"
vim /etc/sysctl.conf
net.ipv4.ip_forward=1

原本的文件 (怕配置完之后,回不到STA模式了)
在没有安装 hostapd udhcpd之前
仅有 /etc/network/interfaces 和空文件 /etc/sysctl.conf
安装了之后,新增了一些文件,初始化配置如下
/etc/udhcpd.conf
start 192.168.0.20 #default: 192.168.0.20
end 192.168.0.254 #default: 192.168.0.254
interface eth0 #default: eth0
#Examles
opt dns 192.168.10.2 192:.168.10.10
option subnet 255.255.255.0
opt router 192.168.10.2
opt wins 192.168.10.10
option dns 129.219.13.81 # appened to above DNS servers for a total of 3
option domain local
option lease 864000 # 10 days of seconds

/etc/default/udhcpd
DHCPD_ENABLED=”no”
DHCPD_OPTS=”-S”

/etc/network/interfaces
auto lo
iface lo inet loopback

/etc/hostapd/hostapd.conf //new file

/etc/default/hostapd
#DAEMON_CONF=""

vim /etc/sysctl.conf //空文件

使用命令行连接WiFi

在Linux环境命令行中实现Wifi 连接的方法

参考文档

http://blog.csdn.net/luoyouren/article/details/50587240
http://blog.csdn.net/xuedianzhishi/article/details/8314782

你可能感兴趣的:(Linux学习)