Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "mpcie"
-
I’ve been programming for 20 years now. My friends and family never really understood what I did back in the days. And they still don’t.
All they saw was a kid who was good with computers. Your friendly neighborhood tech guy who would take a look at your computer for free.
I’m sure most of you have been in the same situation.
When people ask me what I do for a living. I’d just say “something with computers”. Because most of the time they will ask me to look at their computers and I’d reply with “oh that’s not what I do”.
When I was younger, I’d try to explain what I actually do for a living. To really tell people the problems we as a programmer solves on a daily basis or the things we create. That’s really hard to explain to “common” people.
So whenever someone asks me what I do for a living? It’s always something with computers ;)12 -
## Building my own router
IT HAS ALREADY PAID OFF!!!!!
So I (with my fam) have evacuated from the capital of Lithuania into a distant place - much smaller, where average age is prolly >30 or even >40 years. I live in a village now. In a house with very good neighbours. In fact these neighbours own that house :D
Back to the point.
So these neighbours used to share their wifi (w/ internet) between the two houses. They have the line, the mian router has quite a strong antenna and that other house has 2 repeaters: 1 on the outside wall and another one -- indoors. Sepeaters are connected sequentially, i.e. the indoors one is repeating the outdoors one. ikr....?
The first day was alright. We settled in, got everything set up wifi-wise. Peachy.
The second day repeaters refused to issue a DHCP IP. That's something, right? Alright, nvm - I don't mind setting up static IPs. In fact I prefer them over the DHCP magic!
And by the noon both repeaters were connectable but neither of them could provide internet connection... We that sucks! I restarted both of them a few times, neighbours restarted their main router -- still no luck.
Here comes my router [God am I happy with this purchase and the whole idea of a customized router!!! Thanks @hakx20!].
I brought it outside, plugged it in. Connected to it through it's hotspot, used nmcli to connect to neighbours' main router with an internal wifi card (that shitty mPCIe operating in USB mode. yes, the same one, manufactured in 2003. Yes, in g mode.). A couple of iptables rules for traffic forwarding et voila! I have built my own repeater! And tomorrow I can WFH w/o any issues.
Yes, hardware routers are faster and easier to maintain. Yes, hardware routers are cheaper and usually have nicer bells and whistles. But when hardware fails you and the last thing you want is going to the public (shop), soldering rod won't help you. A software solution becomes the easiest to set up, considering you know how to.
Boi am I so happy about my purchase! CentOS router FTW!
P.S. even though we've fled the city we are responsible citizens and we've self-quarantined ourselves for the 14 days period. No local person any closer than 10 meters for the whole period until we're cleared. Being away from the city gives us sooo much freedom! Especialy now, when cities are shitting bricks in fear.rant ap success story repeater quarantine wifi centos hotspot custom router coronavirus custom router4 -
## Building my own router
Damn it! I've got to read more before making decisions :) I already do that, but I need yet *MORE* reading.
So I bought a miniPC which I'm planning to turn into a router. I wanted to install AX200 (wifi6) card in it but it could only see the bluetooth part of it (using btusb kernel module).
What I did NOT know about wifi cards and mPCIe slots
M2 is only a form-factor. It defines what the connector looks like. Over that connector multiple different protocols could be used. m2 (NGFF) WIFI cards are usually using PCIe proto. And USB.
https://delock.com/infothek/M.2/...
My so-desired AX200 uses both PCIe and USB protocols: USB for BT and PCIe for the actual wifi.
https://ark.intel.com/content/www/.... The same spec applies to both: m2 and mPCIe card versions.
Now my mini PC has a mPCIe slot but the label on the board says "USB wifi". Which suggests that it only accepts the USB-related pins of mPCIe (as wiki says about mPCIe: "The host device supports both PCI Express and USB 2.0 connectivity, and each card may use either standard.").
So I guess that means I'm stuck with a useless mPCIe port :D shit..
Now my best bet is to wait for USB dongles supporting wifi6 and use usb AC adapters until then. Well... It's not an optimal outcome. But still IMO a better solution than an embedded router from the shelf!
(No, I'm not giving up and buying another used/new PC :) )
At last I can calm down and stop searching for magical pcie-to-usb adapters :) Phew... That's a relief!1 -
## Building my own router
So after poor luck with mPCIe in my miniPC I decided to go with USB wifi solutions. So I got the https://aliexpress.com/item/... , hooked it up and started setting things up. Took me a day to figure out that firewalld (CentOS7/8 firewall) is not directly compatible with raw iptables commands. Damn it! But hey, a lesson learnt is time well spent!
Installed named, dhcpd, hostapd, disabled NetworkManager for my wifi card, etc.. And had to learn another lesson -- if a netowrk interface is bridged then iptables sees the bridge rather than the raw interface. That's another 2 hours well spent :)
In the end I have a working AP!!! It's still hooked in to my router via RJ45, but it does work and does work quite well!
Here's some comparison for now:
via router (2.4): https://speedtest.net/result/...
via router (5): https://speedtest.net/result/...
via miniPC (2.4): https://speedtest.net/result/...
via miniPC (5): <TBD>
Not that bad, aye?
All in all I'm happy with my decision to build a miniPC based router. Now I have the modularity I wanted so mush and a complete control on my networking! Can't wait for wifi6 USB dongles to be released :)3 -
## building my own router
I hoped things would go more smoothly :)
Anyway, my new miniPC easily accepted CentOS 8 - no fuss here. And I've got to say - I love CentOS8 so far! Shell has amazing nifty tricks, UI (gnome3) is also snappy, video/audio/ethernet,.. everything works.
What I did NOT expect is hardware being off. Well okay, the price was low - it was obvious smth is not right. But still.. I decided to build my own router so that I could swap wifi card whenever I want. So that I could run my own network services in there. Turns out - the card swapping is not as easy as one might think.
I got the AX200 WiFi6 card for that very purpose. But once plugged in the OS can only see it's bluetooth module. Weird... What's even weirder is that even though the card is PCIe, the OS uses btusb module to talk to that device. What? USB?? emm.. What??
And there it is. After opening it up again I noticed that the mPCIe area is marked with a label: "USB WIFI / WWAN". USB? Does that mean this PCIe slot is wired into the USB bus? Not impossible I guess.
Googling for a "pcie wifi over usb" or smth like that brought me to one reddit (I think?) where someone wanted to build a DIY wifi mPCIe -> USB adapter and someone else adviced hime that (for some reason) at best he could only get bluetooth working (hey! just like me!). It's got to do smth with pcie channels and USB being too weak to handle all that load, or smth.. IDK, I'm not a HW guy.
Well that sucks then! I have a mPCIe slot that does not work as a PCIe. Shit! So I guess the best I could do is to plug back in the same wifi card that came with the device. It smells like 2003 - supports only g protocol. Fine, let's try that. Maybe I'll find a way to work around this mPCIe limitation later on (USB adapter or smth... except there are no USB WIFI6 dongles yet :( ). So I plug it back in and start turning it into a router. Disable NetworkManager, configure static NCs' settings, install dhcpd, hostapd, bind and others. Looks like all is done! Now it's time to start it all. systemctl start hostapd --> FAILED. wtf? journalctl says it could not initialize a driver. umm okay? Why? Forums say I should airodump-ng check and kill whatever's using that device. Fine. airodumo reveals avahi and wpa_suppl are still using it. kill, kill, GOTTA KILL 'EM ALL!! Starting hostapd again -- same shit... wtf?
iw list
My gawd... That shitty network card does not even support AP mode :( I mean.. My USB wifi dongle for 2€ supports 2x more modes, is faster, has better range and is easier to work with than this old tart!
Yeah. That was an interesting day. When enfironment engineers break my testing environments at work I'm glad I have where to spend my time now.
BTW any ideas how to bypass this mPCIe nonsense? Come on, there are USB GPUs out there.. Why can't they make a USB (or dual-USB if they really need to) mPCIe adapter?8 -
Why the fuck does my swipe back action gives a ++ on some posts?
Trying to undo it is impossible. The post will go from 15 to 16 and when I vote down, it goes to 14!!!!!3