Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BPFire With XDP #2

Closed
Eykalzz opened this issue Mar 23, 2024 · 76 comments
Closed

BPFire With XDP #2

Eykalzz opened this issue Mar 23, 2024 · 76 comments
Assignees

Comments

@Eykalzz
Copy link

Eykalzz commented Mar 23, 2024

anyone have ipfire iso with xdp ?

@vincentmli
Copy link
Owner

@Eykalzz your problem is not the ISO, but your hyper v for some reason has problem with the ISO, try the ISO with real physical server, but I suspect you may hit #1 even if you can install the ISO, I will investigate that issue too. so for now, your best chance to try IPFire DDoS is to use the flash image in Linux KVM hypervisor which is tested working

@vincentmli
Copy link
Owner

@Eykalzz I made some progress, I think it could be one of my changes to ipfire causing the ISO installation problem, the upstream ipfire ISO has no such issue after I build the ipfire ISO myself

@Eykalzz
Copy link
Author

Eykalzz commented Mar 31, 2024

I made some progress, I think it could be one of my changes to ipfire causing the ISO installation problem, the upstream ipfire ISO has no such issue after I build the ipfire ISO myself

okay noted... what estimated time can finish build new iso ?

i am waiting for good news

@vincentmli
Copy link
Owner

@Eykalzz can you try this iso https://drive.google.com/file/d/1oMRKFPa8--tJfFbE9ZyXMKUBldds6s9q/view?usp=drive_link, no XDP feature yet, but it will tell me if your hyper v support the iso build or not

@Eykalzz
Copy link
Author

Eykalzz commented Apr 2, 2024

@Eykalzz can you try this iso https://drive.google.com/file/d/1oMRKFPa8--tJfFbE9ZyXMKUBldds6s9q/view?usp=drive_link, no XDP feature yet, but it will tell me if your hyper v support the iso build or not

can u change to public .. when i want download need request access from u

@vincentmli
Copy link
Owner

@Eykalzz I added you access, this is only a test iso, once it is proven good, I will publish as public access https://drive.google.com/file/d/1oMRKFPa8--tJfFbE9ZyXMKUBldds6s9q/view?usp=sharing

@Eykalzz
Copy link
Author

Eykalzz commented Apr 2, 2024

@Eykalzz I added you access, this is only a test iso, once it is proven good, I will publish as public access https://drive.google.com/file/d/1oMRKFPa8--tJfFbE9ZyXMKUBldds6s9q/view?usp=sharing

image

same got problem

@Eykalzz
Copy link
Author

Eykalzz commented Apr 2, 2024

ohh okay its work at proxmox ... hyper V got problem .. i try set with public ip later .. now i just try in local ip.. u can try add XDP in this iso see how the result

image

@vincentmli
Copy link
Owner

ok, so looks for some reason hyper v is not supported by the iso, I wonder why ipfire iso is supported by hyper v. I will release iso with XDP support

@Eykalzz
Copy link
Author

Eykalzz commented Apr 2, 2024

ok, so looks for some reason hyper v is not supported by the iso, I wonder why ipfire iso is supported by hyper v. I will release iso with XDP support

yeahh .. work for proxmox only .. hyper V can't .. u can try add XDP this iso ... how long u can add XDP ? 1 week ?

@vincentmli
Copy link
Owner

I don't know, I have about 28 commits required to be added to the iso, to make sure each commit working for the iso, I need to build iso for each commit and each clean iso build takes at least 8 hours on my slow old build machine :). I probably could build iso for 2 or 3 commits to save time, but still it takes time.

@Eykalzz
Copy link
Author

Eykalzz commented Apr 2, 2024

I don't know, I have about 28 commits required to be added to the iso, to make sure each commit working for the iso, I need to build iso for each commit and each clean iso build takes at least 8 hours on my slow old build machine :). I probably could build iso for 2 or 3 commits to save time, but still it takes time.

ohh okay .,, i waiting for this .. anything update here sir ..

Repository owner deleted a comment from Eykalzz Apr 2, 2024
Repository owner deleted a comment from Eykalzz Apr 2, 2024
Repository owner deleted a comment from Eykalzz Apr 2, 2024
Repository owner deleted a comment from Eykalzz Apr 3, 2024
Repository owner deleted a comment from Eykalzz Apr 3, 2024
@vincentmli
Copy link
Owner

IPFire with XDP DDoS ISO build is fixed in #1 (comment)

@Eykalzz
Copy link
Author

Eykalzz commented Apr 4, 2024

IPFire with XDP DDoS ISO build is fixed in #1 (comment)

image

Nice .. only work for proxmox .. hyper V still can't .. let me try again later .. i update u again

@vincentmli
Copy link
Owner

I think there is something else going on with hyper v, I can't think of any of my changes that would cause it fail for hyper v but upstream ipfire doesn't. I also wonder if XDP is supported for hyper v even the installation completes ok, is the guest driver in hyper v supported by XDP ? I don't know about that. I suggest you use proxmox if possible

@Eykalzz
Copy link
Author

Eykalzz commented Apr 4, 2024

I think there is something else going on with hyper v, I can't think of any of my changes that would cause it fail for hyper v but upstream ipfire doesn't. I also wonder if XDP is supported for hyper v even the installation completes ok, is the guest driver in hyper v supported by XDP ? I don't know about that. I suggest you use proxmox if possible

its okay brother .. atleast i can use at proxmox .. i need reinstall back my service to proxmox .. thanks for your time ..

@Eykalzz
Copy link
Author

Eykalzz commented Apr 4, 2024

I think there is something else going on with hyper v, I can't think of any of my changes that would cause it fail for hyper v but upstream ipfire doesn't. I also wonder if XDP is supported for hyper v even the installation completes ok, is the guest driver in hyper v supported by XDP ? I don't know about that. I suggest you use proxmox if possible

its okay brother .. atleast i can use at proxmox .. i need reinstall back my service to proxmox .. thanks for your time ..

image

where can i add my port at here ?

@vincentmli
Copy link
Owner

vincentmli commented Apr 4, 2024

what are your ports? these ports are pre-defined here

cat /var/ipfire/ddos/tcp_ports 
ssh              22/tcp     # The Secure Shell (SSH) Protocol
smtp             25/tcp     # Simple Mail Transfer
http             80/tcp     # World Wide Web HTTP
https            443/tcp    # http protocol over TLS/SSL
domain           53/tcp     # Domain Name Server
httpalt         8080/tcp   # HTTP Alternate (see port 80)
opsmessaging     8090/tcp   # Vehicle to station messaging
userdefined     5555/tcp   # Vehicle to station messaging

you can modify tcp_ports file with your ports, then the WebUI will show your ports, I did not add feature in WebUI to add port to reduce the WebUI code complex, if you are not comfortable manually editing /var/ipfire/ddos/tcp_ports, you can tell me your ports and I can edit for you, it is always good to have some basic linux command line skills so you do not rely on WebUI always :), also make sure the tcp_ports file permission is -rw-r--r-- 1 nobody nobody 444 Apr 3 08:20 tcp_ports by chmod 644 tcp_ports and chown nobody.nobody tcp_ports after manually editing the file

@Eykalzz
Copy link
Author

Eykalzz commented Apr 4, 2024

what are your ports? these ports are pre-defined here

cat /var/ipfire/ddos/tcp_ports 
ssh              22/tcp     # The Secure Shell (SSH) Protocol
smtp             25/tcp     # Simple Mail Transfer
http             80/tcp     # World Wide Web HTTP
https            443/tcp    # http protocol over TLS/SSL
domain           53/tcp     # Domain Name Server
httpalt         8080/tcp   # HTTP Alternate (see port 80)
opsmessaging     8090/tcp   # Vehicle to station messaging
userdefined     5555/tcp   # Vehicle to station messaging

you can modify tcp_ports file with your ports, then the WebUI will show your ports, I did not add feature in WebUI to add port to reduce the WebUI code complex, if you are not comfortable manually editing /var/ipfire/ddos/tcp_ports, you can tell me your ports and I can edit for you, it is always good to have some basic linux command line skills so you do not rely on WebUI always :), also make sure the tcp_ports file permission is -rw-r--r-- 1 nobody nobody 444 Apr 3 08:20 tcp_ports by chmod 644 tcp_ports and chown nobody.nobody tcp_ports after manually editing the file

some game different port .. can u teach me how to add port ?

image

@vincentmli
Copy link
Owner

vincentmli commented Apr 4, 2024

no, you don't execute /var/ipfire/ddos/tcp_ports file, you need to use file editor program like vim editor to change the content of /var/ipfire/ddos/tcp_ports, for example vim /var/ipfire/ddos/tcp_ports to change the port content, you need to learn basic vim editor though, or I can edit for you, just let me know what are the game ports.

@Eykalzz
Copy link
Author

Eykalzz commented Apr 4, 2024

no, you don't execute /var/ipfire/ddos/tcp_ports file, you need to use file editor program like vim editor to change the content of /var/ipfire/ddos/tcp_ports, you can tell me what your game ports are, I can edit for you

To many bro huhuhu

ROW Port TCP

10101
10210
10408
10409
10429
10416

RYL2 TCP Port
10101
13765
14784
10110
24916
21111
10208
10212
10216
11208
11212
11216

RYL1 TCP
10103
10110
10208
11208
20110
10408 UDP

@vincentmli
Copy link
Owner

can you reduce the number of tcp port? right now the XDP code program max port number is 8, I could change the max port number in the code, but it requires recompile the XDP program code and rebuild the iso, also now UDP is not supported, need to add UDP support.

@Eykalzz
Copy link
Author

Eykalzz commented Apr 4, 2024

i see ..so 8 port for 1 iso right ??

80 Web HTTP
10101 Login All Version
10103 Chat RYL1
10210 Auth ROW
10110 Auth RYL2
13765 Auth RYL2
21111 Auth rSec RYL2
24916 Auth rSec RYL2

10408 UDP if u can add UDP function its very nice .. if cant just skip this port

if can add udp .. u can remove port 80

@vincentmli
Copy link
Owner

ok now you can login your ipfire and run command below (copy and paste at the command line and enter)

cd /var/ipfire/ddos; rm -rf tcp_ports ; wget http://www.99os.org/download/tcp_ports; chmod 644 tcp_ports; chown nobody.nobody tcp_ports

@Eykalzz
Copy link
Author

Eykalzz commented Apr 4, 2024

ok now you can login your ipfire and run command below (copy and paste at the command line and enter)

cd /var/ipfire/ddos; rm -rf tcp_ports ; wget http://www.99os.org/download/tcp_ports; chmod 644 tcp_ports; chown nobody.nobody tcp_ports

thanks brother .. i test later .. now i just test in offline pc ... later i test at my dedicated server .. thank you so much ..

@vincentmli
Copy link
Owner

@Eykalzz just check in to see if you run into any issue :)

@Eykalzz
Copy link
Author

Eykalzz commented May 1, 2024

@Eykalzz just check in to see if you run into any issue :)

Hi bro .. for now everything okay .. i dont have try udp for now .. i just try tcp first ..

@vincentmli
Copy link
Owner

have you put it into production use already for tcp?

@Eykalzz
Copy link
Author

Eykalzz commented May 1, 2024

have you put it into production use already for tcp?

Yes, I did.

now my game has running with xdp ip fire

@vincentmli
Copy link
Owner

vincentmli commented May 1, 2024

this is great news, you are the first BPFire/IPFire user with XDP in production use.

you run it in windows hyper v? if so, can you share command output like xdp-loader status or the bottom of the XDP UI page also shows the result. I am curious if XDP is in generic mode or native mode, native mode meaning hyper v nic is supported by XDP natively with better performance.

@Eykalzz
Copy link
Author

Eykalzz commented May 1, 2024

this is great news, you are the first BPFire/IPFire user with XDP in production use.

you run it in windows hyper v? if so, can you share command output like xdp-loader status or the bottom of the XDP UI page also shows the result. I am curious if XDP is in generic mode or native mode, native mode meaning hyper v nic is supported by XDP natively with better performance.

sure .. here i share pictures

image

@vincentmli
Copy link
Owner

ok, it is XDP generic mode, looks hyper v virtual nic is not natively supported by XDP, but it is fine, no problem

@Eykalzz
Copy link
Author

Eykalzz commented May 1, 2024 via email

@vincentmli
Copy link
Owner

if I understand proxmox correct, proxmox should use virtual nic virtio driver that should be natively supported by XDP, when you get time, you can run lspci -vvv | grep -i eth to show me the result, I can tell if proxmox is using virtual nic virtio driver for BPFire/IPFire or not

@Eykalzz
Copy link
Author

Eykalzz commented May 2, 2024

if I understand proxmox correct, proxmox should use virtual nic virtio driver that should be natively supported by XDP, when you get time, you can run lspci -vvv | grep -i eth to show me the result, I can tell if proxmox is using virtual nic virtio driver for BPFire/IPFire or not

image

like this ?? this is proxmox

@Eykalzz
Copy link
Author

Eykalzz commented May 2, 2024

lspci -vvv | grep -i eth

image

hyper V ,, got problem at hyper V ?

@vincentmli
Copy link
Owner

if I understand proxmox correct, proxmox should use virtual nic virtio driver that should be natively supported by XDP, when you get time, you can run lspci -vvv | grep -i eth to show me the result, I can tell if proxmox is using virtual nic virtio driver for BPFire/IPFire or not

image

like this ?? this is proxmox

@Eykalzz sorry missed your note, Intel 82540em might be old enough that is not supported by native XDP but generic XDP, maybe it depends on how you provisioned proxmox, for better performance, you can choose virtio type network from proxmox, I see someone asked similar question in proxmox forum https://forum.proxmox.com/threads/e1000-vs-virtio.80553/, I think you can try the virtio type network from proxmox, that would be supported natively by XDP for better performance.

@vincentmli
Copy link
Owner

lspci -vvv | grep -i eth

image

hyper V ,, got problem at hyper V ?

it seems lspci -vv | grep -i eth did not get the virtual network type info, you run the command on the BPFire OS, right? what about lspci -vvv output ?

@Eykalzz
Copy link
Author

Eykalzz commented May 13, 2024

if I understand proxmox correct, proxmox should use virtual nic virtio driver that should be natively supported by XDP, when you get time, you can run lspci -vvv | grep -i eth to show me the result, I can tell if proxmox is using virtual nic virtio driver for BPFire/IPFire or not

image
like this ?? this is proxmox

@Eykalzz sorry missed your note, Intel 82540em might be old enough that is not supported by native XDP but generic XDP, maybe it depends on how you provisioned proxmox, for better performance, you can choose virtio type network from proxmox, I see someone asked similar question in proxmox forum https://forum.proxmox.com/threads/e1000-vs-virtio.80553/, I think you can try the virtio type network from proxmox, that would be supported natively by XDP for better performance.

how to do this

@Eykalzz
Copy link
Author

Eykalzz commented May 14, 2024

lspci -vvv

[root@Eykalzz ddos]# lspci -vvv
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
Subsystem: Red Hat, Inc. Qemu virtual machine
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-

00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
Subsystem: Red Hat, Inc. Qemu virtual machine
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort - SERR- <PERR- INTx-

00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II] (p rog-if 80 [ISA Compatibility mode-only controller, supports bus mastering])
Subsystem: Red Hat, Inc. Qemu virtual machine
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort - SERR- <PERR- INTx-
Latency: 0
Region 0: I/O ports at 01f0 [size=8]
Region 1: I/O ports at 03f4
Region 2: I/O ports at 0170 [size=8]
Region 3: I/O ports at 0374
Region 4: I/O ports at f0a0 [size=16]
Kernel driver in use: ata_piix
Kernel modules: pata_acpi, ata_generic

00:01.2 USB controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II] ( rev 01) (prog-if 00 [UHCI])
Subsystem: Red Hat, Inc. QEMU Virtual Machine
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Interrupt: pin D routed to IRQ 11
Region 4: I/O ports at f040 [size=32]
Kernel driver in use: uhci_hcd

00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
Subsystem: Red Hat, Inc. Qemu virtual machine
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort - SERR- <PERR- INTx-
Interrupt: pin A routed to IRQ 9
Kernel driver in use: piix4_smbus
Kernel modules: i2c_piix4

00:02.0 VGA compatible controller: Device 1234:1111 (rev 02) (prog-if 00 [VGA co ntroller])
Subsystem: Red Hat, Inc. Device 1100
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Region 0: Memory at fc000000 (32-bit, prefetchable) [size=16M]
Region 2: Memory at fea90000 (32-bit, non-prefetchable) [size=4K]
Expansion ROM at 000c0000 [disabled] [size=128K]
Kernel modules: bochs

00:03.0 Unclassified device [00ff]: Red Hat, Inc. Virtio memory balloon
Subsystem: Red Hat, Inc. Virtio memory balloon
Physical Slot: 3
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 10
Region 0: I/O ports at f000 [size=64]
Region 4: Memory at fd600000 (64-bit, prefetchable) [size=16K]
Capabilities: [84] Vendor Specific Information: VirtIO:
BAR=0 offset=00000000 size=00000000
Capabilities: [70] Vendor Specific Information: VirtIO: Notify
BAR=4 offset=00003000 size=00001000 multiplier=00000004
Capabilities: [60] Vendor Specific Information: VirtIO: DeviceCfg
BAR=4 offset=00002000 size=00001000
Capabilities: [50] Vendor Specific Information: VirtIO: ISR
BAR=4 offset=00001000 size=00001000
Capabilities: [40] Vendor Specific Information: VirtIO: CommonCfg
BAR=4 offset=00000000 size=00001000
Kernel driver in use: virtio-pci

00:05.0 PCI bridge: Red Hat, Inc. QEMU PCI-PCI bridge (prog-if 00 [Normal decode ])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx-
Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 11
Region 0: Memory at fea91000 (64-bit, non-prefetchable) [size=256]
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
I/O behind bridge: e000-efff [size=4K] [16-bit]
Memory behind bridge: fe800000-fe9fffff [size=2M] [32-bit]
Prefetchable memory behind bridge: fd400000-fd5fffff [size=2M] [32-bit]
Secondary status: 66MHz+ FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR-
BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16- MAbort- >Reset- FastB2B-
PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
Capabilities: [4c] MSI: Enable- Count=1/1 Maskable+ 64bit+
Address: 0000000000000000 Data: 0000
Masking: 00000000 Pending: 00000000
Capabilities: [48] Slot ID: 0 slots, First+, chassis 03
Capabilities: [40] Hot-plug capable

00:12.0 Ethernet controller: Red Hat, Inc. Virtio network device
Subsystem: Red Hat, Inc. Virtio network device
Physical Slot: 18
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 10
Region 0: I/O ports at f060 [size=32]
Region 1: Memory at fea92000 (32-bit, non-prefetchable) [size=4K]
Region 4: Memory at fd604000 (64-bit, prefetchable) [size=16K]
Expansion ROM at fea00000 [disabled] [size=256K]
Capabilities: [98] MSI-X: Enable+ Count=4 Masked-
Vector table: BAR=1 offset=00000000
PBA: BAR=1 offset=00000800
Capabilities: [84] Vendor Specific Information: VirtIO:
BAR=0 offset=00000000 size=00000000
Capabilities: [70] Vendor Specific Information: VirtIO: Notify
BAR=4 offset=00003000 size=00001000 multiplier=00000004
Capabilities: [60] Vendor Specific Information: VirtIO: DeviceCfg
BAR=4 offset=00002000 size=00001000
Capabilities: [50] Vendor Specific Information: VirtIO: ISR
BAR=4 offset=00001000 size=00001000
Capabilities: [40] Vendor Specific Information: VirtIO: CommonCfg
BAR=4 offset=00000000 size=00001000
Kernel driver in use: virtio-pci

00:13.0 Ethernet controller: Red Hat, Inc. Virtio network device
Subsystem: Red Hat, Inc. Virtio network device
Physical Slot: 19
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 10
Region 0: I/O ports at f080 [size=32]
Region 1: Memory at fea93000 (32-bit, non-prefetchable) [size=4K]
Region 4: Memory at fd608000 (64-bit, prefetchable) [size=16K]
Expansion ROM at fea40000 [disabled] [size=256K]
Capabilities: [98] MSI-X: Enable+ Count=4 Masked-
Vector table: BAR=1 offset=00000000
PBA: BAR=1 offset=00000800
Capabilities: [84] Vendor Specific Information: VirtIO:
BAR=0 offset=00000000 size=00000000
Capabilities: [70] Vendor Specific Information: VirtIO: Notify
BAR=4 offset=00003000 size=00001000 multiplier=00000004
Capabilities: [60] Vendor Specific Information: VirtIO: DeviceCfg
BAR=4 offset=00002000 size=00001000
Capabilities: [50] Vendor Specific Information: VirtIO: ISR
BAR=4 offset=00001000 size=00001000
Capabilities: [40] Vendor Specific Information: VirtIO: CommonCfg
BAR=4 offset=00000000 size=00001000
Kernel driver in use: virtio-pci

00:1e.0 PCI bridge: Red Hat, Inc. QEMU PCI-PCI bridge (prog-if 00 [Normal decode ])
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx-
Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Interrupt: pin A routed to IRQ 10
Region 0: Memory at fea94000 (64-bit, non-prefetchable) [size=256]
Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
I/O behind bridge: d000-dfff [size=4K] [16-bit]
Memory behind bridge: fe600000-fe7fffff [size=2M] [32-bit]
Prefetchable memory behind bridge: fd200000-fd3fffff [size=2M] [32-bit]
Secondary status: 66MHz+ FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR-
BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16- MAbort- >Reset- FastB2B-
PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
Capabilities: [4c] MSI: Enable- Count=1/1 Maskable+ 64bit+
Address: 0000000000000000 Data: 0000
Masking: 00000000 Pending: 00000000
Capabilities: [48] Slot ID: 0 slots, First+, chassis 01
Capabilities: [40] Hot-plug capable

00:1f.0 PCI bridge: Red Hat, Inc. QEMU PCI-PCI bridge (prog-if 00 [Normal decode ])
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx-
Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Interrupt: pin A routed to IRQ 11
Region 0: Memory at fea95000 (64-bit, non-prefetchable) [size=256]
Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
I/O behind bridge: c000-cfff [size=4K] [16-bit]
Memory behind bridge: fe400000-fe5fffff [size=2M] [32-bit]
Prefetchable memory behind bridge: fd000000-fd1fffff [size=2M] [32-bit]
Secondary status: 66MHz+ FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR-
BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16- MAbort- >Reset- FastB2B-
PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
Capabilities: [4c] MSI: Enable- Count=1/1 Maskable+ 64bit+
Address: 0000000000000000 Data: 0000
Masking: 00000000 Pending: 00000000
Capabilities: [48] Slot ID: 0 slots, First+, chassis 02
Capabilities: [40] Hot-plug capable

01:01.0 SCSI storage controller: Red Hat, Inc. Virtio SCSI
Subsystem: Red Hat, Inc. Virtio SCSI
Physical Slot: 1
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR+ FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 10
Region 0: I/O ports at e000 [size=64]
Region 1: Memory at fe800000 (32-bit, non-prefetchable) [size=4K]
Region 4: Memory at fd400000 (64-bit, prefetchable) [size=16K]
Capabilities: [98] MSI-X: Enable+ Count=11 Masked-
Vector table: BAR=1 offset=00000000
PBA: BAR=1 offset=00000800
Capabilities: [84] Vendor Specific Information: VirtIO:
BAR=0 offset=00000000 size=00000000
Capabilities: [70] Vendor Specific Information: VirtIO: Notify
BAR=4 offset=00003000 size=00001000 multiplier=00000004
Capabilities: [60] Vendor Specific Information: VirtIO: DeviceCfg
BAR=4 offset=00002000 size=00001000
Capabilities: [50] Vendor Specific Information: VirtIO: ISR
BAR=4 offset=00001000 size=00001000
Capabilities: [40] Vendor Specific Information: VirtIO: CommonCfg
BAR=4 offset=00000000 size=00001000
Kernel driver in use: virtio-pci

[root@Eykalzz ddos]#

@vincentmli
Copy link
Owner

@Eykalzz is above lspci -vvv from hyper v guest? if so, the Virtio network device is provisioned from hyper v, which is good and natively supported by XDP.

00:13.0 Ethernet controller: Red Hat, Inc. Virtio network device
Subsystem: Red Hat, Inc. Virtio network device
Physical Slot: 19

I am not familiar with proxmox, I think there should be option in proxmox when you provision the guest to specify network type to be VirtIO (paravirtualized) network interface.

also by the way, I have added load balancer feature to BPFire, so you can run mulitiple game servers with same game server services, and setup load balancer on BPFire to load balance game services to multiple game server, if one of your game server goes down or need maintenance, you still have other game server to serve, see a quick demo here https://youtu.be/80jumLkhDWo?si=ZisD7p7SSPUPrb_E

@Eykalzz
Copy link
Author

Eykalzz commented May 16, 2024

@Eykalzz is above lspci -vvv from hyper v guest? if so, the Virtio network device is provisioned from hyper v, which is good and natively supported by XDP.

00:13.0 Ethernet controller: Red Hat, Inc. Virtio network device
Subsystem: Red Hat, Inc. Virtio network device
Physical Slot: 19

I am not familiar with proxmox, I think there should be option in proxmox when you provision the guest to specify network type to be VirtIO (paravirtualized) network interface.

also by the way, I have added load balancer feature to BPFire, so you can run mulitiple game servers with same game server services, and setup load balancer on BPFire to load balance game services to multiple game server, if one of your game server goes down or need maintenance, you still have other game server to serve, see a quick demo here https://youtu.be/80jumLkhDWo?si=ZisD7p7SSPUPrb_E

what command for i add load balancer .. can help me

@vincentmli
Copy link
Owner

@Eykalzz here is the loxicmd to create load balancer, I could add WebUI feature in future https://loxilb-io.github.io/loxilbdocs/cmd/#how-to-run-and-configure-loxilb

@vincentmli
Copy link
Owner

@Eykalzz just follow-up with your XDP SYNProxy deployment, is it still running ok?

@Eykalzz
Copy link
Author

Eykalzz commented Sep 23, 2024 via email

@vincentmli
Copy link
Owner

@Eykalzz a lot of feature has been added, here is the download link https://drive.google.com/drive/folders/1HPJTWP6wi5gPd5gyiiKvIhWipqguptzZ?usp=drive_link, feel free to reach out to me if you have problem

@vincentmli vincentmli self-assigned this Oct 4, 2024
@vincentmli
Copy link
Owner

@Eykalzz I also relocated the download server to singapore, when you got chance, could you try to download ISO from here https://bpfire.net/download/

@vincentmli
Copy link
Owner

@Eykalzz are you able to try the new BPFire? another user tried it and it is working great for them

Repository owner deleted a comment from Eykalzz Nov 14, 2024
Repository owner deleted a comment from Eykalzz Nov 14, 2024
@Eykalzz
Copy link
Author

Eykalzz commented Nov 15, 2024

@Eykalzz are you able to try the new BPFire? another user tried it and it is working great for them

Can protect udp ?

Repository owner deleted a comment from Eykalzz Nov 23, 2024
vincentmli pushed a commit that referenced this issue Dec 14, 2024
- Update from version 0.6.1-f54b3fa to 0.6.3
- Update of rootfile not required
- Changelog
    0.6.3
	* remove outdated copyright and email
	* Merge pull request #25 from fweimer/patch-1 AC_QEF_C_NORETURN: Include
	  <stdlib.h> for exit
	* Merge pull request #27 from ofalk/master Fix potential write to unallocated
	  memory.
	* Merge pull request #28 from vgropp/#2-fix-csv-bits feat: #2 output bits in csv
	* Merge pull request #29 from vgropp/#2-fix-csv-bits fix(doc): #2 output bits
	  in csv
	* Merge pull request #32 from vgropp/new-netstat-#5 feat: add support for
	  newer (2016+) linux netstat #5
    0.6.2
	* Merge pull request #22 from vgropp/issue-#13 to fix windows build
	* Merge pull request #20 from dreibh/master CSV file output: fix for timestamp
	  inaccuracy and Y-2038 problem
	* Merge pull request #21 from vgropp/travisci add travisci
	* Merge pull request #17 from Himura2la/master Add the started time in "sum" mode
	* Merge pull request #18 from Himura2la/fix-dynamic Fix DYNAMIC and ANSIOUT in
	  config
	* Merge pull request #10 from SoapGentoo/fixes Use `static inline` instead of
	  `inline`
	* Merge pull request #9 from adventureloop/master Always fflush the pipe
	* Merge pull request #7 from samueloph/fsf_address_clean Update FSF address
	* Merge pull request #6 from samueloph/master Fix typos
	* fix nan and inf values on fast refresh (fixes debian bug #532331

Signed-off-by: Adolf Belka <[email protected]>
Signed-off-by: Michael Tremer <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants