Tuning Power Consumption on FreeBSD Laptops and Intel Speed Shift (6th Gen and Later)

When running FreeBSD on laptops with a 6th Gen (Skylake) or later Intel CPU, for me these are HP Spectre x360s (sorry, I’m not a ThinkPad fan), one annoyance with the out of the box FreeBSD configuration is the fact that the fan is running most of the time. In comparison, a HP Envy with an AMD Ryzen does not have this issue with an out-of-the-box FreeBSD. One thing that Intel has done with these modern CPUs is include a technology called Speed Shift. [Read More]

Setting up a Signal Proxy using FreeBSD

With the events that the private messaging app Signal has been blocked in Iran, Signal has come up with an “proxy” solution akin to Tor’s Bridges, and have given instructions on how to do it. For people who prefer FreeBSD over Linux like myself, we obviously can’t run Docker, which is what Signal’s instructions focus on. Fortunately, the Docker image is just a fancy wrapper around nginx, and the configs can be ported to any OS. [Read More]

FreeBSD 13: Fixing the installer "Failed to configure bootloader" error with Manual Partitioning and UEFI

On my laptop (HP Spectre x360 2018), I decided to install a second FreeBSD install, this time on the Intel Optane drive. When I proceeded to install, I chose manual partitioning, and while it finished extraction, it proceeded me to this error: This happened to me on a recent 13-CURRENT. I don’t believe it happened on earlier snapshots or 12.x. I had this issue with both UFS and ZFS partitioning. [Read More]

Setting the IPv6 TTL/Hop Limit on FreeBSD

My current wireless service is T-Mobile and I use a unlocked (Google Store edition) Google Pixel 3 running LineageOS. I am a heavy user of tethering, and unlike Sprint (switched pre-merger), T-Mobile checks for the TTL to count for hotspot bandwidth if TTL<=64 (can be bypassed with TTL=65 on a laptop). My personal laptop happens to run FreeBSD, so I initially thought that setting net.inet.ip.ttl sets both the IPv4 and IPv6 TTL, since at the time I didn’t see a net. [Read More]

Fixing FreeBSD pkg errors when running "pkg update" on Microsoft Azure

I work at Microsoft, and with that, I get free Azure credits. Considering where I work, I have no use for FreeBSD at work, only Windows. However, I spent seven years of my life prior to getting $DAYJOB using FreeBSD, going back to high school and basically built my personal setup on it. I haven’t bothered to switch my personal desktop or home server to Windows (yet*), so I’ll create a FreeBSD VM in Azure and try to update it. [Read More]

Use dummynet in a VM? High latency? Set kern.hz to 1000

As a hobby, I play with software routers in virtual machines (always FreeBSD). One recent project of mine was to emulate DSL bandwidth and latency in a VM, from varying bandwidths of 1.5 Mbps (ADSL) to 50 Mbps (VDSL2). By default, when using FreeBSD on a hypervisor, the kern.hz tunable is set to 100. This is to prevent additional CPU use from idling. But dummynet recommends kern.hz=1000 which is also the default on physical hardware. [Read More]

Using Office 365 Mail on Android With 2FA Without Outlook or InTune

I’m a recent Microsoft hire. That being said, it’s obvious that they’re using Office 365’s Hosted Exchange for their email, which is a departure from G Suite at NYU and CacheCash, and my personal FreeBSD/Postfix/Dovecot setup. Like many big companies, Microsoft requires 2FA (Two-Factor Authentication) for logging in to company resources. Well, okay, I done this before. But then, to use corporate email “officially”, I have to use not only Outlook, but also the InTune App, which “manages” my device. [Read More]

A Simple IPFW In-Kernel NAT Setup on FreeBSD

After graduating college, I am moving from Brooklyn, NY to Redmond, WA (guess where I got a job). I always wanted to re-do my OPNsense firewall (currently a HP T730) with stock FreeBSD and IPFW’s in-kernel NAT. Why IPFW? Benchmarks have shown IPFW to be faster which is especially good for my Tor relay, and because I can! However, one downside of IPFW is less documentation vs PF, even less without natd (which we’re not using), and this took me time to figure this out. [Read More]

OPNsense/pfSense on the HP T730: Use Broadcom NICs, not Intel

I recently picked up an HP T730 as my OPNsense firewall, mainly to repurpose my previous HP ProDesk as a desktop. With that, I also initially tried an Intel NIC primarily because the de-facto NIC choice for OPNsense/pfSense is in fact Intel. To my surprise, the T730 froze with the Intel-based NICs I tried, both igb and em based cards. Many people have reported on pfSense’s subreddit that certain Intel-based NICs actually do freeze on the T730. [Read More]

Installing GENI Tools/Omni on FreeBSD

I have been asked to use GENI to test some software I have written at CacheCash/NYU. To communicate with GENI, you usually use a tool called Omni. FreeBSD has been my choice of desktop operating system since 2012, and since I am using my personal machine, my work is being done on FreeBSD. However, Omni only supports Python 2 while FreeBSD’s default version of Python is Python 3. Not that a default of Python 3 is a bad thing (I think it’s a blessing), but some additional steps are needed to install run Omni in this case. [Read More]