Bridge wlan0 to eth0

目的是为了让Proxmox VE 使用无线适配器,同时让虚拟机也作为同一局域网的设备
而直接创建一个wlan0的vmbr2并不能让机器接入,在网上搜索了一大圈之后经过测试最终还是使用arp转发的方式实现桥接
(4addr 的桥接方式要路由器支持,但具体怎么操作网上找不到)

首先要连上Wi-Fi

# install essential packages
apt install wireless-tool wpasupplicant
# list available APs
iwlist scan
# generate wpa config
wpa_passphrase ssid psk4ssid >> wpa.conf

修改网卡配置 /etc/network/interfaces

# let NIC connect automatic
auto wlan0
iface wlan0 inet dhcp
	wpa-conf /root/wpa.conf

因为不能直接桥接 wlan 和 eth 桥接 所以通过转发arp包的方式实现桥接的目的

# install essential packages
apt install dhcp-helper avahi-daemon parprouted

然后修改3个配置文件

/etc/default/dhcp-helper

DHCPHELPER_OPTS="-b wlp4s0"

/etc/avahi/avahi-daemon.conf

[reflector]
enable-reflector=yes

/etc/network/interfaces

auto wlan0
iface wlan0 inet dhcp
	wpa-conf /root/wpa.conf
	pre-up sysctl net.ipv4.ip_forward=1
	pre-up sysctl net.ipv4.conf.all.proxy_arp=1
	post-up parprouted eth0 wlan0
	post-up /etc/init.d/dhcp-helper restart
	post-up ip addr add $(ip addr show wlan0 |perl -wne 'm|^\s+inet (.*)/| && print $1')/32 dev eth0
	pre-down ip addr del $(ip addr show wlan0 |perl -wne 'm|^\s+inet (.*)/| && print $1')/32 dev eth0
	pre-down killall parprouted

auto eth0
iface eth0 inet manual

2 Comments

  1. 老哥有个问题能问一下吗,就是wlan0的IP地址不会立即分配,所以post-up脚本可能会执行失败导致eth0 分配不到有效ip,有办法解决。

    1. 给post-up 脚本加一个延迟试试,家里网络dhcp分配挺快的就没考虑这个分配失败的问题

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注