這裡還有其他類似的問題,但沒有一個答案對我有用。
我可以使用 ubuntu 和我的 vagrant 配置成功為 virtualbox 設定啟用混雜模式
vb.customize ["modifyvm", :id, "--nicpromisc3", "allow-all"]
我可以看到在 virtualbox 中設定已成功更改,但是在 ubuntu 中,當我執行時它似乎沒有啟用
ip a
我明白了
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0d:13:2a:3a:23 brd ff:ff:ff:ff:ff:ff
inet 192.168.15.10/24 brd 192.168.92.255 scope global enp0s8
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe1f:5c51/64 scope link
valid_lft forever preferred_lft forever
我正在使用流浪者圖像 -
config.vm.box = "ubuntu/xenial64"
主機在 macos 10.13.6 上
答案1
解決方案是向 rc.local 添加一些配置。我的 Ansible 解決方案是
- name: insert/update block in /etc/rc.local
blockinfile:
path: /etc/rc.local
backup: yes
content: |
#promiscuous mode required for routing
/sbin/ifconfig {{ vpn_nic }} up
/sbin/ifconfig {{ vpn_nic }} promisc
when: configure_gateway|bool
tags:
- init
- name: execute and check with netstat
shell: |
/etc/rc.local
netstat -i
register: netstatout
become: true
tags:
- init
- debug:
msg: "{{ netstatout.stdout }}"