Problem Configuring VoIP from a Fibre Connection

use ifname @wanc

I did that. The wanc6 gives an Error

Besides, now the wanc interface mac address has reverted to the original mac adress of the lan port. Earlier (before using ifname '@wanc' in place of 'eth0. 131') when I used mac address override for wanc6 and changed the Mac address to that of ONT, the same was applied to wanc also.

opkg update; opkg install tcpdump

That should not be the case if wanc is up.

You can override the mac from the interface settings.
Also post the output of uci export network omitting the sensitive data.

1 Like

opkg update; opkg install tcpdump

root@OpenWrt:~# tcpdump -i eth0.1849 -evn icmp
tcpdump: listening on eth0.1849, link-type EN10MB (Ethernet), capture size 262144 bytes

That should not be the case if wanc is up.

Its working now.

Also post the output of uci export network omitting the sensitive data

root@OpenWrt:~# uci export
package dhcp

config dnsmasq
  option domainneeded '1'
  option boguspriv '1'
  option filterwin2k '0'
  option localise_queries '1'
  option rebind_protection '1'
  option rebind_localhost '1'
  option local '/lan/'
  option domain 'lan'
  option expandhosts '1'
  option nonegcache '0'
  option authoritative '1'
  option readethers '1'
  option leasefile '/tmp/dhcp.leases'
  option resolvfile '/tmp/resolv.conf.auto'
  option nonwildcard '1'
  option localservice '1'

config dhcp 'lan'
  option interface 'lan'
  option start '100'
  option limit '150'
  option leasetime '12h'
  option dhcpv6 'server'
  option ra 'server'
  option ra_management '1'

config dhcp 'wan'
  option interface 'wan'
  option ignore '1'

config odhcpd 'odhcpd'
  option maindhcp '0'
  option leasefile '/tmp/hosts/odhcpd'
  option leasetrigger '/usr/sbin/odhcpd-update'
  option loglevel '4'

package dropbear

config dropbear
  option PasswordAuth 'on'
  option Port '22'

package firewall

config defaults
  option input 'ACCEPT'
  option output 'ACCEPT'
  option synflood_protect '1'
  option forward 'ACCEPT'

config zone
  option name 'lan'
  option input 'ACCEPT'
  option output 'ACCEPT'
  option forward 'ACCEPT'
  option network 'lan BSNLVOIP'

config zone
  option name 'wan'
  option input 'REJECT'
  option output 'ACCEPT'
  option forward 'REJECT'
  option mtu_fix '1'
  option masq '1'
  option network 'wan wan6 wanb wanb6 wanc wancvirtual wanc6'

config forwarding
  option src 'lan'
  option dest 'wan'

config rule
  option name 'Allow-DHCP-Renew'
  option src 'wan'
  option proto 'udp'
  option dest_port '68'
  option target 'ACCEPT'
  option family 'ipv4'

config rule
  option name 'Allow-Ping'
  option src 'wan'
  option proto 'icmp'
  option icmp_type 'echo-request'
  option family 'ipv4'
  option target 'ACCEPT'

config rule
  option name 'Allow-IGMP'
  option src 'wan'
  option proto 'igmp'
  option family 'ipv4'
  option target 'ACCEPT'

config rule
  option name 'Allow-DHCPv6'
  option src 'wan'
  option proto 'udp'
  option src_ip 'fc00::/6'
  option dest_ip 'fc00::/6'
  option dest_port '546'
  option family 'ipv6'
  option target 'ACCEPT'

config rule
  option name 'Allow-MLD'
  option src 'wan'
  option proto 'icmp'
  option src_ip 'fe80::/10'
  list icmp_type '130/0'
  list icmp_type '131/0'
  list icmp_type '132/0'
  list icmp_type '143/0'
  option family 'ipv6'
  option target 'ACCEPT'

config rule
  option name 'Allow-ICMPv6-Input'
  option src 'wan'
  option proto 'icmp'
  list icmp_type 'echo-request'
  list icmp_type 'echo-reply'
  list icmp_type 'destination-unreachable'
  list icmp_type 'packet-too-big'
  list icmp_type 'time-exceeded'
  list icmp_type 'bad-header'
  list icmp_type 'unknown-header-type'
  list icmp_type 'router-solicitation'
  list icmp_type 'neighbour-solicitation'
  list icmp_type 'router-advertisement'
  list icmp_type 'neighbour-advertisement'
  option limit '1000/sec'
  option family 'ipv6'
  option target 'ACCEPT'

config rule
  option name 'Allow-ICMPv6-Forward'
  option src 'wan'
  option dest '*'
  option proto 'icmp'
  list icmp_type 'echo-request'
  list icmp_type 'echo-reply'
  list icmp_type 'destination-unreachable'
  list icmp_type 'packet-too-big'
  list icmp_type 'time-exceeded'
  list icmp_type 'bad-header'
  list icmp_type 'unknown-header-type'
  option limit '1000/sec'
  option family 'ipv6'
  option target 'ACCEPT'

config rule
  option name 'Allow-IPSec-ESP'
  option src 'wan'
  option dest 'lan'
  option proto 'esp'
  option target 'ACCEPT'

config rule
  option name 'Allow-ISAKMP'
  option src 'wan'
  option dest 'lan'
  option dest_port '500'
  option proto 'udp'
  option target 'ACCEPT'

config include
  option path '/etc/firewall.user'

config forwarding
  option dest 'lan'
  option src 'wan'

config zone
  option input 'ACCEPT'
  option forward 'ACCEPT'
  option name 'Voice'
  option output 'ACCEPT'

config forwarding
  option dest 'lan'
  option src 'Voice'

config forwarding
  option dest 'Voice'
  option src 'lan'

package luci

config core 'main'
  option lang 'auto'
  option mediaurlbase '/luci-static/bootstrap'
  option resourcebase '/luci-static/resources'
  option ubuspath '/ubus/'

config extern 'flash_keep'
  option uci '/etc/config/'
  option dropbear '/etc/dropbear/'
  option openvpn '/etc/openvpn/'
  option passwd '/etc/passwd'
  option opkg '/etc/opkg.conf'
  option firewall '/etc/firewall.user'
  option uploads '/lib/uci/upload/'

config internal 'languages'

config internal 'sauth'
  option sessionpath '/tmp/luci-sessions'
  option sessiontime '3600'

config internal 'ccache'
  option enable '1'

config internal 'themes'
  option Bootstrap '/luci-static/bootstrap'

config internal 'apply'
  option rollback '90'
  option holdoff '4'
  option timeout '5'
  option display '1.5'

config internal 'diag'
  option dns 'openwrt.org'
  option ping 'openwrt.org'
  option route 'openwrt.org'

package mwan3

config policy 'balanced'
  list use_member 'wan_m1_w3'
  list use_member 'wanb_m1_w2'
  list use_member 'wan6_m1_w3'
  list use_member 'wanb6_m1_w2'
  list use_member 'wanc_m1_w2'
  option last_resort 'unreachable'

config policy 'wan_only'
  list use_member 'wan_m1_w3'
  list use_member 'wan6_m1_w3'

config policy 'wanb_only'
  list use_member 'wanb_m1_w2'
  list use_member 'wanb6_m1_w2'

config policy 'wan_wanb'
  list use_member 'wan_m1_w3'
  list use_member 'wanb_m2_w2'
  list use_member 'wan6_m1_w3'
  list use_member 'wanb6_m2_w2'

config policy 'wanb_wan'
  list use_member 'wan_m2_w3'
  list use_member 'wanb_m1_w2'
  list use_member 'wan6_m2_w3'
  list use_member 'wanb6_m1_w2'

config globals 'globals'
  option mmx_mask '0x3F00'
  option rtmon_interval '5'

config interface 'wan'
  option enabled '1'
  list track_ip '8.8.4.4'
  list track_ip '8.8.8.8'
  list track_ip '208.67.222.222'
  list track_ip '208.67.220.220'
  option family 'ipv4'
  option reliability '2'
  option count '1'
  option timeout '2'
  option failure_latency '1000'
  option recovery_latency '500'
  option failure_loss '20'
  option recovery_loss '5'
  option interval '5'
  option down '3'
  option up '8'

config interface 'wan6'
  option enabled '0'
  list track_ip '2001:4860:4860::8844'
  list track_ip '2001:4860:4860::8888'
  list track_ip '2620:0:ccd::2'
  list track_ip '2620:0:ccc::2'
  option family 'ipv6'
  option reliability '2'
  option count '1'
  option timeout '2'
  option interval '5'
  option down '3'
  option up '8'

config interface 'wanb'
  list track_ip '8.8.4.4'
  list track_ip '8.8.8.8'
  list track_ip '208.67.222.222'
  list track_ip '208.67.220.220'
  option family 'ipv4'
  option count '1'
  option timeout '2'
  option interval '5'
  option down '3'
  option up '8'
  option enabled '1'
  option initial_state 'online'
  option track_method 'ping'
  option size '56'
  option max_ttl '60'
  option check_quality '0'
  option failure_interval '5'
  option recovery_interval '5'
  option reliability '2'

config interface 'wanb6'
  option enabled '0'
  list track_ip '2001:4860:4860::8844'
  list track_ip '2001:4860:4860::8888'
  list track_ip '2620:0:ccd::2'
  list track_ip '2620:0:ccc::2'
  option family 'ipv6'
  option reliability '1'
  option count '1'
  option timeout '2'
  option interval '5'
  option down '3'
  option up '8'

config member 'wan_m1_w3'
  option interface 'wan'
  option metric '1'
  option weight '3'

config member 'wan_m2_w3'
  option interface 'wan'
  option metric '2'
  option weight '3'

config member 'wanb_m1_w2'
  option interface 'wanb'
  option metric '1'
  option weight '2'

config member 'wanb_m2_w2'
  option interface 'wanb'
  option metric '2'
  option weight '2'

config member 'wan6_m1_w3'
  option interface 'wan6'
  option metric '1'
  option weight '3'

config member 'wan6_m2_w3'
  option interface 'wan6'
  option metric '2'
  option weight '3'

config member 'wanb6_m1_w2'
  option interface 'wanb6'
  option metric '1'
  option weight '2'

config member 'wanb6_m2_w2'
  option interface 'wanb6'
  option metric '2'
  option weight '2'

config rule 'https'
  option sticky '1'
  option dest_port '443'
  option proto 'tcp'
  option use_policy 'balanced'

config rule 'default_rule_v4'
  option dest_ip '0.0.0.0/0'
  option use_policy 'balanced'
  option family 'ipv4'

config rule 'default_rule_v6'
  option dest_ip '::/0'
  option use_policy 'balanced'
  option family 'ipv6'

config interface 'wanc'
  option enabled '1'
  option initial_state 'online'
  option family 'ipv4'
  option track_method 'ping'
  option reliability '1'
  option count '1'
  option size '56'
  option max_ttl '60'
  option check_quality '0'
  option timeout '2'
  option interval '5'
  option failure_interval '5'
  option recovery_interval '5'
  option down '3'
  option up '3'
  list track_ip '8.8.4.4'
  list track_ip '8.8.8.8'
  list track_ip '208.67.222.222'
  list track_ip '208.67.220.220'

config member 'wanc_m1_w2'
  option interface 'wanc'
  option metric '1'
  option weight '2'

config member 'wanc_m2_w2'
  option interface 'wanc'
  option metric '2'
  option weight '2'

package mwan3-opkg

config globals 'globals'
  option mmx_mask '0x3F00'
  option rtmon_interval '5'

config interface 'wan'
  option enabled '1'
  list track_ip '8.8.4.4'
  list track_ip '8.8.8.8'
  list track_ip '208.67.222.222'
  list track_ip '208.67.220.220'
  option family 'ipv4'
  option reliability '2'
  option count '1'
  option timeout '2'
  option failure_latency '1000'
  option recovery_latency '500'
  option failure_loss '20'
  option recovery_loss '5'
  option interval '5'
  option down '3'
  option up '8'

config interface 'wan6'
  option enabled '0'
  list track_ip '2001:4860:4860::8844'
  list track_ip '2001:4860:4860::8888'
  list track_ip '2620:0:ccd::2'
  list track_ip '2620:0:ccc::2'
  option family 'ipv6'
  option reliability '2'
  option count '1'
  option timeout '2'
  option interval '5'
  option down '3'
  option up '8'

config interface 'wanb'
  option enabled '0'
  list track_ip '8.8.4.4'
  list track_ip '8.8.8.8'
  list track_ip '208.67.222.222'
  list track_ip '208.67.220.220'
  option family 'ipv4'
  option reliability '1'
  option count '1'
  option timeout '2'
  option failure_latency '1000'
  option recovery_latency '500'
  option failure_loss '20'
  option recovery_loss '5'
  option interval '5'
  option down '3'
  option up '8'

config interface 'wanb6'
  option enabled '0'
  list track_ip '2001:4860:4860::8844'
  list track_ip '2001:4860:4860::8888'
  list track_ip '2620:0:ccd::2'
  list track_ip '2620:0:ccc::2'
  option family 'ipv6'
  option reliability '1'
  option count '1'
  option timeout '2'
  option interval '5'
  option down '3'
  option up '8'

config member 'wan_m1_w3'
  option interface 'wan'
  option metric '1'
  option weight '3'

config member 'wan_m2_w3'
  option interface 'wan'
  option metric '2'
  option weight '3'

config member 'wanb_m1_w2'
  option interface 'wanb'
  option metric '1'
  option weight '2'

config member 'wanb_m2_w2'
  option interface 'wanb'
  option metric '2'
  option weight '2'

config member 'wan6_m1_w3'
  option interface 'wan6'
  option metric '1'
  option weight '3'

config member 'wan6_m2_w3'
  option interface 'wan6'
  option metric '2'
  option weight '3'

config member 'wanb6_m1_w2'
  option interface 'wanb6'
  option metric '1'
  option weight '2'

config member 'wanb6_m2_w2'
  option interface 'wanb6'
  option metric '2'
  option weight '2'

config policy 'wan_only'
  list use_member 'wan_m1_w3'
  list use_member 'wan6_m1_w3'

config policy 'wanb_only'
  list use_member 'wanb_m1_w2'
  list use_member 'wanb6_m1_w2'

config policy 'balanced'
  list use_member 'wan_m1_w3'
  list use_member 'wanb_m1_w2'
  list use_member 'wan6_m1_w3'
  list use_member 'wanb6_m1_w2'

config policy 'wan_wanb'
  list use_member 'wan_m1_w3'
  list use_member 'wanb_m2_w2'
  list use_member 'wan6_m1_w3'
  list use_member 'wanb6_m2_w2'

config policy 'wanb_wan'
  list use_member 'wan_m2_w3'
  list use_member 'wanb_m1_w2'
  list use_member 'wan6_m2_w3'
  list use_member 'wanb6_m1_w2'

config rule 'https'
  option sticky '1'
  option dest_port '443'
  option proto 'tcp'
  option use_policy 'balanced'

config rule 'default_rule_v4'
  option dest_ip '0.0.0.0/0'
  option use_policy 'balanced'
  option family 'ipv4'

config rule 'default_rule_v6'
  option dest_ip '::/0'
  option use_policy 'balanced'
  option family 'ipv6'

package network

config interface 'loopback'
  option ifname 'lo'
  option proto 'static'
  option ipaddr '127.0.0.1'
  option netmask '255.0.0.0'

config globals 'globals'
  option ula_prefix 'fd4e:2271:c462::/48'

config interface 'lan'
  option type 'bridge'
  option ifname 'eth0.1'
  option proto 'static'
  option netmask '255.255.255.0'
  option ip6assign '60'
  option ipaddr '192.168.0.1'

config device 'lan_eth0_1_dev'
  option name 'eth0.1'
  option macaddr '08:02:8e:e6:43:e8'

config interface 'wan'
  option ifname 'eth0.2'
  option proto 'dhcp'
  option metric '10'

config device 'wan_eth0_2_dev'
  option name 'eth0.2'
  option macaddr '08:02:8e:e6:43:e9'

config interface 'wan6'
  option ifname 'eth0.2'
  option proto 'dhcpv6'

config switch
  option name 'switch0'
  option reset '1'
  option enable_vlan '1'

config switch_vlan
  option device 'switch0'
  option vlan '1'
  option vid '1'
  option ports '6t 0'

config switch_vlan
  option device 'switch0'
  option vlan '2'
  option vid '2'
  option ports '6t 4'

config switch_vlan
  option device 'switch0'
  option vlan '3'
  option vid '3'
  option ports '6t 3'

config interface 'wanb'
  option ifname 'eth0.3'
  option proto 'dhcp'
  option metric '20'
  option macaddr '08:02:8E:E6:43:E7'

config interface 'wanb6'
  option ifname 'eth0.3'
  option proto 'dhcpv6'
  option reqaddress 'try'
  option reqprefix 'auto'

config switch_vlan
  option device 'switch0'
  option vlan '5'
  option vid '131'
  option ports '6t 2t'

config switch_vlan
  option device 'switch0'
  option vlan '6'
  option vid '1849'
  option ports '6t 1t'

config interface 'wanc'
  option ifname 'eth0.131'
  option proto 'pppoe'
  option password 'password'
  option ipv6 'auto'
  option username 'kail_sun@ftth.bsnl.in'
  option metric '30'
  option mtu '1492'
  option keepalive '6 10'

config interface 'wancvirtual'
  option ifname 'eth0.4'
  option proto 'static'
  option netmask '255.255.255.0'
  option ipaddr '192.168.1.4'
  option gateway '192.168.1.1'
  option macaddr '08:02:8e:e6:43:e6'

config interface 'BSNLVOIP'
  option ifname 'eth0.1849'
  option proto 'dhcp'
  option macaddr '7c:a9:6b:37:28:2d'

config route
  option target '10.0.0.0'
  option gateway '10.146.24.1'
  option interface 'BSNLVOIP'
  option netmask '255.0.0.0'
  option metric '5'

config switch_vlan
  option device 'switch0'
  option vlan '7'
  option ports '6t 2'
  option vid '4'

config interface 'wanc6'
  option ifname '@wanc'
  option proto 'dhcpv6'
  option reqprefix 'auto'
  option reqaddress 'try'
  option macaddr '7c:a9:6b:37:28:2c'

package rpcd

config rpcd
  option socket '/var/run/ubus.sock'
  option timeout '30'

config login
  option username 'root'
  option password '$p$root'
  list read '*'
  list write '*'

package siproxd

config siproxd 'general'
  option interface_inbound 'lan'
  option interface_outbound 'wan'

package system

config system
  option hostname 'OpenWrt'
  option timezone 'UTC'
  option ttylogin '0'
  option log_size '64'
  option urandom_seed '0'

config timeserver 'ntp'
  option enabled '1'
  option enable_server '0'
  list server '0.openwrt.pool.ntp.org'
  list server '1.openwrt.pool.ntp.org'
  list server '2.openwrt.pool.ntp.org'
  list server '3.openwrt.pool.ntp.org'

config led 'led_wan'
  option name 'wan'
  option sysfs 'r6220:green:wan'
  option trigger 'switch0'
  option port_mask '0x10'

package ucitrack

config network
  option init 'network'
  list affects 'dhcp'
  list affects 'radvd'

config wireless
  list affects 'network'

config firewall
  option init 'firewall'
  list affects 'luci-splash'
  list affects 'qos'
  list affects 'miniupnpd'

config olsr
  option init 'olsrd'

config dhcp
  option init 'dnsmasq'
  list affects 'odhcpd'

config odhcpd
  option init 'odhcpd'

config dropbear
  option init 'dropbear'

config httpd
  option init 'httpd'

config fstab
  option exec '/sbin/block mount'

config qos
  option init 'qos'

config system
  option init 'led'
  option exec '/etc/init.d/log reload'
  list affects 'luci_statistics'
  list affects 'dhcp'

config luci_splash
  option init 'luci_splash'

config upnpd
  option init 'miniupnpd'

config ntpclient
  option init 'ntpclient'

config samba
  option init 'samba'

config tinyproxy
  option init 'tinyproxy'

package uhttpd

config uhttpd 'main'
  list listen_http '0.0.0.0:80'
  list listen_http '[::]:80'
  list listen_https '0.0.0.0:443'
  list listen_https '[::]:443'
  option redirect_https '1'
  option home '/www'
  option rfc1918_filter '1'
  option max_requests '3'
  option max_connections '100'
  option cert '/etc/uhttpd.crt'
  option key '/etc/uhttpd.key'
  option cgi_prefix '/cgi-bin'
  list lua_prefix '/cgi-bin/luci=/usr/lib/lua/luci/sgi/uhttpd.lua'
  option script_timeout '60'
  option network_timeout '30'
  option http_keepalive '20'
  option tcp_keepalive '1'

config cert 'defaults'
  option days '730'
  option key_type 'rsa'
  option bits '2048'
  option ec_curve 'P-256'
  option country 'ZZ'
  option state 'Somewhere'
  option location 'Unknown'
  option commonname 'OpenWrt'

package wireless

config wifi-device 'radio0'
  option type 'mac80211'
  option channel '11'
  option hwmode '11g'
  option path 'pci0000:00/0000:00:01.0/0000:02:00.0'
  option htmode 'HT20'
  option disabled '0'

config wifi-iface 'default_radio0'
  option device 'radio0'
  option network 'lan'
  option mode 'ap'
  option ssid 'OpenWrt'
  option encryption 'none'

config wifi-device 'radio1'
  option type 'mac80211'
  option channel '36'
  option hwmode '11a'
  option path 'pci0000:00/0000:00:00.0/0000:01:00.0'
  option htmode 'VHT80'
  option disabled '0'

config wifi-iface 'default_radio1'
  option device 'radio1'
  option network 'lan'
  option mode 'ap'
  option ssid 'OpenWrt'
  option encryption 'none'

root@OpenWrt:~# 

You can override the mac from the interface settings

There is no option to override mac when using Pppoe in interface settings.

Use macvlan.

Evidently there is nothing going out of this interface.
Since you are using mwan3 you need to add a rule, a policy, a member, and an interface for the BSNLVOIP .

1 Like

I did create an Interface, a member, a policy and a Rule. I don't know if I did it correctly? Still I cannot ping the voice gateway from the openwrt.

Please don't take screenshots, better post the output of uci export mwan3; ip -4 addr; ip -4 ro li table all; ip -4 ru

2 Likes

My main concern is that the wanc Pppoe is not stabilizing. It remains down for almost half the time everyday. I am still not able to figure out the reason. And because of this I am not able to do the analysis consistently.
Anyway, for the time being I have reverted to the Modem function on ONT itself and Openwrt doing the Load Balancing only.
I'll try to get the ONT changed in sometime and then see if things work...