Hello!
I got myself a new PCI ethernet card instead of an old USB3 to ethernet in a
"router" named desktop machine.
in short:
But pppoe doesn't connects via the new PCI card. Only if I start a tcpdump on
it!?
longer:
#################################################################
# THE CONFIG
router# cat /etc/hostname.re1
up lladdr xx:xx:xx:xx:xx:xx
router#
router# cat /etc/hostname.pppoe0
inet 0.0.0.0 255.255.255.255 NONE pppoedev re1 authproto pap debug authname
'censored' authkey 'censored' up
dest 0.0.0.1
!/sbin/route add default -ifp pppoe0 0.0.0.1
router#
OpenBSD 6.5 amd64
#################################################################
# THE STATE
router# ifconfig re1
re1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
lladdr xx:xx:xx:xx:xx:xx
index 2 priority 0 llprio 3
media: Ethernet 100baseTX full-duplex
status: active
router#
router# ifconfig pppoe0
pppoe0: flags=8855<UP,DEBUG,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST> mtu 1492
index 5 priority 0 llprio 3
dev: re1 state: PADI sent
sid: 0x0 PADI retries: 5 PADR retries: 0
sppp: phase establish authproto pap authname "censored"
groups: pppoe egress
status: no carrier
inet 0.0.0.0 --> 0.0.0.1 netmask 0xffffffff
router#
router# dmesg|grep re1
re1 at pci3 dev 0 function 0 "Realtek 8168" rev 0x07: RTL8168E/8111E-VL
(0x2c80), msi, address xx:xx:xx:xx:xx:xx
rgephy1 at re1 phy 7: RTL8169S/8110S/8211 PHY, rev. 5
router#
#################################################################
# I TRIED:
- rebooting, waiting for many minutes
- pap or chap
- mac filtering is OK, that is the MAC, what is in the hostname.re1
- doing: ifconfig re1 media "10baseT" - thinking of cable issue
- tried to plug in to the pci eth card via a Gbit switch, still no pppoe
- "ifconfig pppoe0 down" and "up" gives only these debug messages:
down:
Aug 24 15:15:06 router /bsd: pppoe0: lcp close(starting)
Aug 24 15:15:06 router /bsd: pppoe0: lcp starting->initial
Aug 24 15:15:06 router /bsd: pppoe0: phase dead
up:
Aug 24 15:15:11 router /bsd: pppoe0: lcp close(initial)
Aug 24 15:15:11 router /bsd: pppoe0: lcp open(initial)
Aug 24 15:15:11 router /bsd: pppoe0: lcp initial->starting
Aug 24 15:15:11 router /bsd: pppoe0: phase establish
Aug 24 15:15:11 router /bsd: pppoe0 (8863) state=1, session=0x0 output ->
ff:ff:ff:ff:ff:ff, len=18
#################################################################
# INTERESTING THING:
if I plug back my old USB3 to ethernet, it works instantly (via the usb3 eth):
router# mv /etc/hostname.re1 /etc/hostname.cdce0
router# sed -i 's/re1/cdce0/g' /etc/hostname.pppoe0
+puting the ISP cable to cdce0.
then "reboot"
it works... gets IP:
router# ifconfig cdce0
cdce0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
lladdr xx:xx:xx:xx:xx:xx
index 5 priority 0 llprio 3
router#
router# ifconfig pppoe0
pppoe0: flags=8855<UP,DEBUG,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST> mtu 1492
index 6 priority 0 llprio 3
dev: cdce0 state: session
sid: 0x5eb PADI retries: 0 PADR retries: 0 time: 00:00:20
sppp: phase network authproto pap authname "censored"
groups: pppoe egress
status: active
inet yy.yy.yyy.yyy --> 10.0.0.1 netmask 0xffffffff
router#
#################################################################
a funny thing happened. I wanted to do a tcpdump on the pci ethernet re1, and
during tcpdump, pppoe connected:
router# tcpdump -i re1
...
pppoe0: flags=8855<UP,DEBUG,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST> mtu 1492
index 6 priority 0 llprio 3
dev: re1 state: session
sid: 0x16f4 PADI retries: 9 PADR retries: 0 time: 00:01:24
sppp: phase network authproto pap authname "censored"
groups: pppoe egress
status: active
inet yy.yy.yy.yyy --> 10.0.0.1 netmask 0xffffffff
So it ONLY successfully connects via pppoe if tcpdump is running for re1! Why?
I can 100% reproduce it. If I stop the tcpdump, the public IP stays, but there
is no internet connection to the world.
is this a bug? or a flag is set by tcpdump for the nic?
#################################################################
What am I missing? Why can't I connect via pppoe with the PCI ethernet card
without running tcpdump on it?
Thanks.