Linux基础网络管理命令

前言

WiFi

  1. 安装WIFI连接管理程序
1
2
3
4
5
sudo apt install wpasupplicant

wpa_cli # 交互程序
wpa_supplicant # 守护进程
wpa_passphrase # 密钥加密
  1. 快速连接范例
1
2
3
4
5
6
7
wpa_cli -i wlan0 scan
wpa_cli -i wlan0 scan_result
wpa_passphrase AP-NAME password > /etc/wpa_supplicant/wpa_supplicant.conf
wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf

# 通过DHCP客户端来获取IP(DHCP客户端程序:dhclient,dhcpcd,udhcpc)
dhclient wlan0
  1. 使用配置文件可直接连接
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 配置文件路径:/etc/wpa_supplicant/wpa_supplicant.conf
# 允许使用wpa_cli扫描可用的网络和netdev组中的用户控制wpa_supplicant
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1 # 允许保存的连接信息覆盖配置

network={
ssid="AP-NAME" # 接入点的名称
psk="password" # 接入点的密码
scan_ssid=1 # 连接隐藏的点
priority=5 # 连接的优先级
}

network={ # 连接开放接入点
ssid="AP-NAME"
key_mgmt=NONE
}
  1. 执行wpa_cli -i wlan0进入交互界面后可省略前面内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
status					# 当前连接状态
scan   # 扫描附近热点
scan_result   # 显示扫描结果
add_network # 新增网络序号
set_network 0 ssid "AP-NAME" # 设置热点名称
set_network 0 psk "password" # 设置热点密码
enable_network 0 # 启用新增网络
save_config # 存到配置文件
disconnect # 断开WiFi热点
reconnect # 重连WiFi热点
list_network # 查看已存连接
select_network <network id> # 连接指定热点
enable_network <network id> # 开启指定连接
disable_network <network id> # 关闭指定连接
remove_network <network id> # 删除WiFi热点
  1. 使用无线工具iw可查询无线的硬件信息
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 查看网卡信息
iw list
iw phy0 info
iw dev wlan0 info

# 创建接口,工作模式有master、managed、ad-hoc、monitor等。
iw phy phy0 interface add wlan0 type managed
iw dev wlan0 del # 删除接口

# wireless-tools包中的iwlist命令仅在客户端模式下可用
iwlist wlan0 scanning # 搜索无线网络
iwlist wlan0 frequency # 显示频道信息
iwlist wlan0 channel # 显示所在信道
iwlist wlan0 rate # 显示连接速度
iwlist wlan0 power # 显示电源模式
iwlist wlan0 txpower # 显示无线功率
iwlist wlan0 retry # 显示重连次数
iwlist wlan0 ap # 显示热点信息
......

Bluetooth

  1. 安装Bluetooth连接管理程序:sudo apt install bluez

  2. 添加pi用户到蓝牙组后重启,否则普通用户pi无法操作蓝牙:sudo usermod -G bluetooth -a pi

  3. 如果不添加用户到蓝牙组,那么全局都需要以root权限运行

  4. 重启后蓝牙连接不需要重复配对,只需要执行:connect F4:4E:FD:F0:2A:69 即可

  5. 连接蓝牙设备

1
2
3
4
5
6
7
8
9
10
11
sudo hciconfig -a			# 查看设备
sudo bluetoothctl # 进入交互

# 以下是在bluetoothctl交互环境中执行
[bluetooth]# power on # 打开蓝牙
[bluetooth]# agent on # 启动代理
[bluetooth]# default-agent # 默认代理
[bluetooth]# scan on # 开始扫描
[bluetooth]# pair F4:4E:FD:F0:2A:69 # 设备配对
[bluetooth]# trust F4:4E:FD:F0:2A:69 # 添加信任
[bluetooth]# connect F4:4E:FD:F0:2A:69 # 连接设备
  1. 其他蓝牙命令
1
2
3
4
5
6
7
8
9
10
11
12
hciconfig hci0 up			# 打开蓝牙
hciconfig hci0 off # 关闭蓝牙
hciconfig hciX piscan # 可被发现

hcitool dev # 查看设备
hcitool scan # 进行扫描
hcitool lescan # 低功耗扫描
hcitool auth F4:4E:FD:F0:2A:69 # 设备配对
hcitool cc F4:4E:FD:F0:2A:69 # 连接设备
hcitool dc F4:60:E2:73:40:B9 # 断开连接

l2ping F4:60:E2:73:40:B9 # 测试蓝牙的连通性

PPPOE拨号上网

  1. 安装PPPOE程序后执行即可进入文本配置界面
1
2
3
4
5
sudo apt install pppoeconf
sudo pppoeconf eth0 # 文本设置界面
sudo pon dsl-provider # 启动拨号上网
sudo poff dsl-provider # 关闭拨号上网
plog # 查看拨号日志
  1. 如果NetworkManager改为了true,或者/etc/network/interfaces修改了,一定要先改回系统的默认的设置。

终端下设置代理

  1. 支持的代理变量
1
2
3
4
5
6
7
# 终端使用代理支持的变量名
no_proxy # 无需代理的主机或域名,可使用通配符,多个时使用","号隔开
all_proxy # 全部变量设置代理,设置后下面都可不用设置了
ftp_proxy # 为FTP协议设置代理
http_proxy # 为HTTP协议设置代理
https_proxy # 为HTTPS协议设置代理
socket_proxy # 为SOCKET协议设置代理
  1. 使代理临时有效
1
2
3
4
5
6
7
8
9
10
11
# 不指定协议默认http协议传输
export all_proxy="127.0.0.1:7890"
export no_proxy="*.a.cn,192.168.*.*,2.2.2.2"
export https_proxy="socks5://127.0.0.1:1080"
export http_proxy="http://username:password@127.0.0.1:8080"

# 取消代理的方法
unset http_proxy
unset https_proxy
unset ftp_proxy
unset no_proxy
  1. 使代理永久有效
1
2
3
4
5
# 在 /etc/profile 或 ~/.bashrc 文件中写入如下配置:
export all_proxy="127.0.0.1:7890"
export no_proxy="*.a.cn,192.168.*.*,2.2.2.2"
export https_proxy="socks5://127.0.0.1:1080"
export http_proxy="http://username:password@127.0.0.1:8080"