BINREV SPYD3R

Members
  • Content count

    3,075
  • Joined

  • Last visited

    Never
  • Days Won

    15

Everything posted by BINREV SPYD3R

  1. The alarm clock on my bedside table had a very loud alarm—so loud that it scared me and made my heart race when it went off. I know you're thinking I should just use an alarm on my phone, but for whatever reason I wanted to use the alarm clock. In this episode I talk about installing a resistor in the speaker wires of the alarm clock so that it won't be so loud when it goes off. It's all good now. Loud enough to wake me up, but not so loud that it scares everyone. View the full article
  2. NEW 'Off The Wall' ONLINE Posted 16 Oct, 2019 1:08:41 UTC The new edition of Off The Wall from 15/10/2019 has been archived and is now available online. "Off The Wall" - 15/10/2019 Download the torrent here!!!! View the full article
  3. Below are examples of messages shown on the screen during operation System Up (Unfortunately I didn’t get a picture of this message) Shows the unit waiting to get a wi-fi connection and get given an IP address. Unit goes to the HPR site and gets the number of days to free slot in the show queue. At the time when I took the picture the queue had a healthy 22 shows! Links to three previous shows I did that mention the Blinkstick Solving a problem I had with my Blinkstick http://hackerpublicradio.org/eps.php?id=2089 Tracking the HPR queue using python and a Blinkstick http://hackerpublicradio.org/eps.php?id=2340 Follow on to HPR2340 (Tracking the HPR queue in Python) http://hackerpublicradio.org/eps.php?id=2344 Link to Moc, Music On Console https://moc.daper.net/ Menu 0 Podcasts screens 0 [PODCASTS] 0 1 <|| PLAY/PAUSE (Toggles moc between play and Pause) 0 2 << INFORMATION(Displays information about the current track) 0 3 << (Move to previous track in playlist) 0 4 << (Move to next track in playlist) 0 5 LIGHT (Toggle back-light on LCD screen) PUSH IN TOP TOGGLE BUTTON (Seek forward or back in current track) Menu 1 Audiobooks screens 1 [AUDIOBOOKS] 1 1 <|| PLAY/PAUSE (Toggles moc between play and Pause) 1 2 << INFORMATION(Displays information about the current track) 1 3 << (Move to previous track in playlist) 1 4 << (Move to next track in playlist) 1 5 LIGHT (Toggle back-light on LCD screen) PUSH IN TOP TOGGLE BUTTON (Seek forward or back in current track) Menu 2 System screens 2 [SYSTEM] 2 1 Sys Information (System information) 2 2 WiFi (Displays WiFi inofrmation such SSID & signal strength) 2 3 HPR (Displays the number days to the next free slots on FPR que) 2 4 Not shown, (Not in use) 2 5 LIGHT (Toggle back-light on LCD screen) PUSH IN TOP TOGGLE BUTTON (Shut-down the Raspberry Pi) Infra-red Sensor Example of my Samsung TV remote control Lirc Article from Wikipedia https://en.wikipedia.org/wiki/LIRC Infra-red sensor turned on Infra-red sensor turned off Kodi article on Wikipedia, (Formerly XBMC) https://en.wikipedia.org/wiki/Kodi_(software) Example of a message being sent to the unit telling me that a backup is complete. The bright pink LED on the Blinkstick lets me know at a glance that a message has been sent to the display. EEE PC article on Wikipedia https://en.wikipedia.org/wiki/Asus_Eee_PC Switch Bounce article on Wikipedia https://en.wikipedia.org/wiki/Switch#Contact_bounce A flavour of what information is shown when the information button 2 is pushed. The picture showing the title scrolling from right to left was blurred so I didn’t include this. The menu displayed during seek, this in initiated by pushing and releasing the toggle button while either in the Podcasts main menu 0 or Audio book main menu 1. The shut-down menu this in initiated by pushing and releasing the toggle button while in the System main menu 2. View the full article
  4. The Autumn issue of 2600 is now out. And this one is pretty historic. For the first time, we're offering a brand new issue in DRM-free PDF format. This is an experiment to see if we can reach all kinds of new people - or old people we've lost touch with over the years for one reason or another. You can help by spreading the word in whatever way you can. Of course, we still have all of the other digital formats (Kindle, Nook, Google Play) plus the standard paper edition. We've also made the paper edition much easier to find. If you're in the United States, simply click here for a handy guide to all of the known stores that sell 2600. Of course, nothing beats the ease of subscribing and having issues sent directly to you. And regarding those other digital formats, you can find them all here. View the full article
  5. This episode is Part 8 of the Stardrifter role-playing game playtest. The series is composed of two playtest sessions, held earlier this year. They were recorded and chopped into manageable bites, then edited down into separate episodes. This series is meant to give listeners some insight into the RPG construction process. Playtesting is not the final step, but rather, just another stage. The construction of an RPG can be convoluted, and feedback from players is absolutely vital. In this part, the characters reevaluate their life choices, and decide that negotiation is the better part of valor! Special thanks to my playtesters: Thaj, Mark (who was playing Brinn), and X1101! View the full article
  6. In this episode, Dave and his family wander the paths of Sandall Beat Wood in Doncaster to participate in the game of Geocaching. During this time, which demonstrates an unusual level of failure in us playing the game, we try and explain what the game is all about. No, not The Game... As I explain at the beginning of the episode, this is a fairly long episode which hasn't been edited down much, so there are a lot of ambient pauses and heavy breathing to be enjoyed. Recorded in the field on my Olympus DM-3 voice recorder. Caches explored Cache 1 - GC7F8ND - not found Cache 2 - GC50TVW - not found Cache 3 - GC7KRHH - found! Links Link to photos and screenshot geocaching.com Official Geocaching App: Google Play | App Store c:geo Geocaching app: Google Play View the full article
  7. MeWe is another platform that was advertised to users left high-and-dry by the closure of Google Plus. It is not federated, but does make strong claims of privacy protection, and is the slickest alternative I have seen to Google Plus. So when Google Plus disappeared, many people moved over to this platform. https://www.zwilnik.com/?page_id=1030 Links: https://mewe.com/ https://mewepro.com/ https://mewe.com/store https://mewe.com/# https://www.zwilnik.com/?page_id=1030 View the full article
  8. NEW 'Off The Hook' ONLINE Posted 10 Oct, 2019 5:17:31 UTC The new edition of Off The Hook from 09/10/2019 has been archived and is now available online. "Off The Hook" - 09/10/2019 Download the torrent here!!!! View the full article
  9. #!/usr/bin/env python import urllib.request import json import re import subprocess # see https://www.weather.gov/documentation/services-web-api #where are we? GPS coordinates lat = 39.275235 lon = -120.9199507 #what is the user agent string? agent = "Jezra's fun lil script" #minimum wind speed in mph? min_speed = 9 def get_api_data(endpoint): print(endpoint) #prepare the connection with custom headers request = urllib.request.Request(endpoint, headers={"User-Agent":agent}) #create a handler for the request handler = urllib.request.urlopen(request) #get the text text = handler.read() #parse the json text to a python object obj = json.loads(text) return obj def wind_is_good(s): #use regex to find the matches matches = re.findall("[0-9]+",s) for match in matches: #convert string to int m = int(match) #is the speed good? if(m>=min_speed): return True #if we get here, there is no match :( return False start_url = "https://api.weather.gov/points/{0},{1}".format(lat,lon) #get the json response from the start_url as a python object obj = get_api_data(start_url) #get the forecast url from the returned data forecast_url = obj['properties']['forecast'] # process the forecast url forecast = get_api_data(forecast_url) #loop through the forcast periods for period in forecast['properties']['periods']: #put name and windspeed into easier to handle variable names name= period['name'] wind = period['windSpeed'] print (name, wind) #check the wind speed if wind_is_good(wind): subprocess.call(["textjezra","{0}: {1}".format(name,wind)]) View the full article
  10. NEW 'Off The Wall' ONLINE Posted 09 Oct, 2019 2:28:21 UTC The new edition of Off The Wall from 08/10/2019 has been archived and is now available online. "Off The Wall" - 08/10/2019 Download the torrent here!!!! View the full article
  11. Intro We’re going to have a look how to select random item from weighted list. There isn’t that much code this time, but it certainly took many tries to get it working and looking nice. Analogy Imagine stack of building blocks of different heights stacked on top of each other. Height of the each block is chance of how often it will be selected. Selection is done by chopping a stick so that its length at maximum is height of the stack. Place stick next to the stack and select the block that stick reaches at. Explanation of algorithm We have list of items and associated weight, defined as Frequency a = Frequency Int a. Total is sum of all the weights and we select a random number n between 1 and total. pick function has signature of [Frequency a] -> n -> Maybe a. Empty list will result Nothing. When picking item, if n is equal or less than weight of the first item, return that item. Otherwise, drop the first item, subtract weight of that first item from n and try again. Eventually we either arrive to item which weight is greater than n or to empty list. Quick detour on random number generators Haskell functions are pure, meaning that with same input, you are guaranteed to get the same output (safe for some specific cases). Which makes concept of random numbers at first glance to be impossible. This is solved by passing in a random number generator, which can supply you a random value a new random number generator. Using this new random number generator to generate a value yields you a yet another value and yet another random number generator. Passing these random number generators around in code gets tedious, but there’s different solution: MonadRandom. Using it will thread along generators automatically behind the scenes, ensuring that you always have access to a fresh generator. There’s several functions that can be used to generate random values, but we’re using this one: getRandomR :: Random a => (a, a) -> m a. Given a lower and upper bound, it will return you a random value wrapped in context that carries that new random number generator. In the end, we need to take our computation (that can be complex and use multiple calls to random number generator) and turn that m a into a. This is done with runRand :: RandomGen g => Rand g a -> g -> (a, g). We give it our computation and a RandomGen g that can generate random values and receive (a, g) where a is our result and g new random number generator. In cases where we aren’t going to use the new generator, we can use evalRand :: RandomGen g => Rand g a -> g -> a, which discards it and returns just a. Actual implementation with explanation First, Frequency for expressing weight of individual item. It’s parametrized, so can be used with any data. data Frequency a = Frequency Int a deriving (Show, Read, Eq) Next, determining which item to choose, based on stack and measuring stick. In case a value outside of valid range has been selected, we end up with Nothing, otherwise with Just a. First case is for empty list (either we called this originally with empty list or picked number that is greater than total sum of weights), second one either picks the first item of list or recursive calls itself removing first item. pick :: [Frequency a] -> Int -> Maybe a pick [] _ = Nothing pick (Frequency x item:xs) i | i <= x = Just item | otherwise = pick xs (i - x) Finally, function for calculating total of weights and choosing random number. We’re using that Rand g (Maybe a) I explained earlier. First case is for empty list again and latter case for list with at least one item. choose :: RandomGen g => [Frequency a] -> Rand g (Maybe a) choose [] = return Nothing choose items = do let total = sum $ fmap (\(Frequency x _) -> x) items n <- getRandomR (1, total) return $ pick items n Notice how we can get random number by n <- getRandomR (1, total), without talking about generators. MonadRandom is handling generators and making sure that there’s always a fresh generator available and new generator is stored ready to be used. And that’s all the code this time (I told the amount of code is small this time). In closing This probably sounds a lot more complicated than it actually is. I arrived to the result after quite many detours, but the end result looks pretty nice. Next time we’re going to have a look where to use our choose function. In the meantime, questions, comments and feedback are welcomed. Best way to reach me is email or fediverse where I’m tuturto@mastodon.social. Or even better, record your own Hacker Public Radio episode. View the full article
  12. This is an experiment to see if we can offset the many challenges faced by trying to get a paper magazine into stores worldwide. If successful, this can solve these problems and ensure the future of both the paper and electronic versions of the magazine. We've made it as easy and as cheap as we can. Please support our efforts, spread the word, and buy the new issue! Click here to begin. View the full article
  13. This episode is Part 7 of the Stardrifter role-playing game playtest. The series is composed of two playtest sessions, held earlier this year. They were recorded and chopped into manageable bites, then edited down into separate episodes. This series is meant to give listeners some insight into the RPG construction process. Playtesting is not the final step, but rather, just another stage. The construction of an RPG can be convoluted, and feedback from players is absolutely vital. In this part, the characters make some new friends who show them their guns! Bonus Fun: I make tons of mistakes reading my own rules! Special thanks to my playtesters: Thaj, Mark (who was playing Brinn), and X1101! View the full article
  14. On the morning of October 7, 2019, staffers at WBAI in New York were locked out and all programming suspended. According to the Pacifica Foundation (parent of WBAI), this was done due to "serious and persistent financial losses at WBAI." This necessitated the foundation laying off all the staff. But, as with most things, it's not quite that simple. For one, the implication that WBAI is responsible for all of Pacifica's financial woes is simply not true. There has long been hostility towards WBAI from other members of the network who believe that too much money is being spent on New York rents and that selling the station's valuable license could benefit the rest of the network. However, many of the problems WBAI has faced in recent years came about as a direct result of Pacifica actions. For instance, WBAI's recent financial crisis caused by being locked into an exhorbitant transmitter lease to the Empire State Building only happened because Pacifica signed that lease. There are numerous other examples, but the point is that it's inaccurate and unfair to blame one station for problems that the entire network is responsible for. We also question the wisdom of suspending all programming at the beginning of a month-long fund drive. So for now, "Off The Hook" is off the air. Yes, we can always do a podcast, but we're a radio show and half the magic is reaching those people who aren't on the net while also talking to those who are. We intend to fight to preserve that. We hope you join us. View the full article
  15. New hosts There were no new hosts this month. Last Month's Shows Id Day Date Title Host 2891 Mon 2019-09-02 HPR Community News for August 2019 HPR Volunteers 2892 Tue 2019-09-03 Stardrifter RPG Playtest Part 02 lostnbronx 2893 Wed 2019-09-04 Whats in the box! Part 2 NYbill 2894 Thu 2019-09-05 Repairing a Musical Instrument Case Jon Kulp 2895 Fri 2019-09-06 The work of fire fighters, part 2 Jeroen Baten 2896 Mon 2019-09-09 Orange PI Zero LTS version JWP 2897 Tue 2019-09-10 Stardrifter RPG Playtest Part 03 lostnbronx 2898 Wed 2019-09-11 Modeling people in space game tuturto 2899 Thu 2019-09-12 Endeavour OS Tony Hughes AKA TonyH1212 2900 Fri 2019-09-13 Better Social Media 01 - Introduction Ahuka 2901 Mon 2019-09-16 Describing how I listen to podcasts PART 3 MrX 2902 Tue 2019-09-17 Stardrifter RPG Playtest Part 04 lostnbronx 2903 Wed 2019-09-18 What is PMEM JWP 2904 Thu 2019-09-19 DIY URL shortening klaatu 2905 Fri 2019-09-20 Two HPR hosts living in the same region finally meet up! Dave Morriss 2906 Mon 2019-09-23 Feature Engineering for Data-Driven Decision Making b-yeezi 2907 Tue 2019-09-24 Stardrifter RPG Playtest Part 05 lostnbronx 2908 Wed 2019-09-25 Modeling opinions in space game tuturto 2909 Thu 2019-09-26 ONICS Basics Part 3: Networking Fundamentals Gabriel Evenfire 2910 Fri 2019-09-27 Better Social Media 02 - Pluspora Ahuka 2911 Mon 2019-09-30 my internet connection Jezra Comments this month These are comments which have been made during the past month, either to shows released during the month or to past shows. There are 17 comments in total. Past shows There are 3 comments on 3 previous shows: hpr1328 (2013-09-04) "A Hacker's Perspective On Schizophrenia " by sigflup. Comment 6: Vegewurst on 2019-09-06: "Insightful" hpr2844 (2019-06-27) "The Sony TC-222-A Portable Reel-To-Reel Tape Recorder" by Jon Kulp. Comment 1: Michael on 2019-09-29: "Muffled sound because of low path filtering." hpr2881 (2019-08-19) "Automatically split album into tracks in Audacity" by Ken Fallon. Comment 2: Hipstre on 2019-09-01: "2881 - Audacity: Split Album into Tracks" This month's shows There are 14 comments on 9 of this month's shows: hpr2891 (2019-09-02) "HPR Community News for August 2019" by HPR Volunteers. Comment 1: Ken Fallon on 2019-09-02: "Where was Ken ?" Comment 2: Jon Kulp on 2019-09-03: "Heroic effort!" Comment 3: Dave Morriss on 2019-09-04: "Thanks Jon" hpr2893 (2019-09-04) "Whats in the box! Part 2" by NYbill. Comment 1: timttmy on 2019-09-05: "Trem pedal" Comment 2: Jon Kulp on 2019-09-06: "No delay" Comment 3: NYbill on 2019-09-07: "Hit and Miss" hpr2895 (2019-09-06) "The work of fire fighters, part 2" by Jeroen Baten. Comment 1: Ken Fallon on 2019-09-06: "Very dissapointed" Comment 2: Steve on 2019-09-10: "Volunteer Firefighters" hpr2903 (2019-09-18) "What is PMEM" by JWP. Comment 1: archer72 on 2019-09-27: "Awesome" hpr2904 (2019-09-19) "DIY URL shortening" by klaatu. Comment 1: tuturto on 2019-09-23: "clever" hpr2906 (2019-09-23) "Feature Engineering for Data-Driven Decision Making" by b-yeezi. Comment 1: archer72 on 2019-09-27: "Nice show" hpr2907 (2019-09-24) "Stardrifter RPG Playtest Part 05" by lostnbronx. Comment 1: archer72 on 2019-09-27: "Nice series" hpr2909 (2019-09-26) "ONICS Basics Part 3: Networking Fundamentals" by Gabriel Evenfire. Comment 1: archer72 on 2019-09-27: "Interesting" hpr2910 (2019-09-27) "Better Social Media 02 - Pluspora" by Ahuka. Comment 1: archer72 on 2019-09-27: "Nice show" Mailing List discussions Policy decisions surrounding HPR are taken by the community as a whole. This discussion takes place on the Mail List which is open to all HPR listeners and contributors. The discussions are open and available on the HPR server under Mailman. The threaded discussions this month can be found here: http://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2019-September/thread.html Events Calendar With the kind permission of LWN.net we are linking to The LWN.net Community Calendar. Quoting the site: This is the LWN.net community event calendar, where we track events of interest to people using and developing Linux and free software. Clicking on individual events will take you to the appropriate web page. Any other business Tags and Summaries Thanks to the following contributor for sending in updates in the past month: windigo Over the period tags and/or summaries have been added to 1 show which was without them. If you would like to contribute to the tag/summary project visit the summary page at https://hackerpublicradio.org/report_missing_tags.php and follow the instructions there. Change to the Missing Tags document The section of this document which lists all of the tags currently in the system has been made more accessible. If you know of a tag in the system and you want to find out how many instances there are and which shows use them you can construct a query of the form: https://hackerpublicradio.org/report_missing_tags.php#vim This would look for the tag 'vim' and position the page at the relevant place. If the tag you are looking for contains spaces, you need to replace them with underscores. So to look for the tag 'vietnamese stringed instruments' your query would have to be: https://hackerpublicradio.org/report_missing_tags.php#vietnamese_stringed_instruments View the full article
  16. I discuss loading Fedora on various bits of older hardware and devise a plan to turn one of those bits of older hardware into a dedicated headless audio processor using its firewire port to keep yet another older piece of hardware alive: a Yamaha GO46 audio interface. Having done that and finding that it all performs admirably, I illogically decide to replace it with newer (but not new) hardware and buy yet another different model firewire audio interface: a Focusrite Saffire Pro 24. I record the end of the show on audio interface #3: a USB based Steinberg UR22mkII, which one could argue that I should have been using all along, leaving the firewire gear in the last decade where it belongs (?). View the full article
  17. PiFace Control and Display http://www.piface.org.uk/products/piface_control_and_display/ How to fit, setup and install the required software for your Raspberry Pi running the Raspbian Operating system http://www.piface.org.uk/guides/setting_up_pifacecad/fitting_PiFace_Control_and_Display/ Pictures 01, 02 and 03 show how the PiFace Control and Display board and raspberry pi fit into the case Pictures 04 and 05 shows the piece of plastic used to transfer the light from the LED’s on the Pi board to the holes in the casing. This is supposed to allow you to monitor the PI LED’s. I held it in place using a piece of Blu Tack. Wikipedia article about Blu Tack https://en.wikipedia.org/wiki/Blu_Tack Picture 6 shows the completed box Pictures 7 and 8 show the project in operation and mounted on a spare Anker tablet stand that I had lying about. This is an example of the Anker stand I used. I use it to hold my project at a 45 degree angle so I can see it from around the room, it is intended to be used as a tablet stand. Anker stand for my Nexus 7, pictures, links View the full article
  18. On Tuesday, October 8th, for the very first time ever, the new issue of 2600 will be released digitally in non-DRM PDF format. We know there are many of you who have been unable to secure copies of 2600 in recent years. With high distribution costs and a declining bookstore landscape, it's become much harder to publish a paper magazine and get it to all the places our readers are. This digital version can help solve that problem once and for all - and help restore the funding we need to survive. We ask for your help in getting the word out (in addition to hopefully buying the issue when it's released). We know there are many thousands out there who no longer have bookstores that carry 2600 in their neighborhoods or who live in parts of the world where getting our publication has always been, at best, a challenge. Please show your support and buy this issue which you can then enjoy forever - and let everyone know what we're doing. Because if this is a success, we will be able to invest more into the magazine (paper and digital) to make it even better, as well as support more projects like HOPE. The address to get the new issue on Tuesday is store.2600.com/products/new-issue . View the full article
  19. NEW 'Off The Wall' ONLINE Posted 02 Oct, 2019 0:57:47 UTC The new edition of Off The Wall from 01/10/2019 has been archived and is now available online. "Off The Wall" - 01/10/2019 Download the torrent here!!!! View the full article
  20. Intro Last Upload was hpr1468 March 19, 2014 python >>> print (D.today() - D(2014, 3, 19)).days 1999 >>> 2000/365 5 https://unix.stackexchange.com/questions/24626/quickly-calculate-date-differences In the last 5 years: Traveled the world. Deployed a lot of things for work. Taken on a new role which moves me from Datacenters to Networks. Learned a lot about Operations, Datacenter Infrastructure, People around the world, and why it is important to have your house in order. Read over 3 dozen books. Paid off debt and focused on long term financial goals. Humility, Humanity, and Harmony: Three things I have continued to strive for in my personal life, work, and hobbies. Let's Start The Show off in the wrong direction Windows Chocolatey Great Tool for Downloading free software from the windows powershell command line https://chocolatey.org/docs/installation Sublime Text 3 Fantastic Text editor and very powerful. I use this to quickly parse data using regex searches and push this to spreadsheets or other tools that allow me to organize data quickly. Overall Great tool for anyone Summary: Overall: The importance of being an everyday Windows User has allowed me to focus on solving problems in different and unique ways. I've found that the way I use Windows is not the same as most normal Windows Users. I live most of the time inside of Chrome so Windows is just another OS to get my Chrome Browser running. Observation: Windows has definitely matured over the past 10 years. I find myself enjoying the time I save using Windows 10. Contradictions: I still use Linux, but as a VM to work on things that I just can't do inside of Windows. Web Stuff Regex Test and debug your regex. It is a great tool that combines pastebin and regex debugging. This allows you to share your regex with other by simply using a link. There is a lot of useful information on the site about what each portion of your regex is doing. https://regex101.com Maps USGS Maps Very nice site that allows you to download PDFs of 1:24000 or 7.5 minute Maps. You can print these off and use a Map grid tool to navigate your journey. This is kind of an analog tool but you are downloading the maps to your computer or phone. Good to have maps saved offline while you hike, that way you don't get lost. https://store.usgs.gov/map-locator SDN Information If you're just starting with Software Defined Networking or are already working with it in a production environment, there is much to learn but very few places to find aggregated information. The GitHub Page called awesome-sdn has tons of links on NOS,Controllers, Libraries, and more. I have A couple of Northbound network and Aruba switches at home to use with my SDN projects. I highly recommend you start getting familiar with network automation using ansible or other automation best practices at the least. For the more technical stuff definitely start looking at SDN. Awesome-SDN https://github.com/sdnds-tw/awesome-sdn/blob/master/README.md Northbound Networks SDN Devices https://northboundnetworks.com/ ZeroTier is an example of SDN WAN or Edge Networking https://www.zerotier.com/download/ Home Hacks Home Phone Cheap way to have a home phone Google Voice Number OBi200 VoIP Telephone Adapter 100Mb LAN Has the Option to sign up for 911 but with just Google Voice Number it is a free way to have a house phone https://www.obitalk.com/info/products/obi200 Firewalls Off the shelf vs DIY options Off The Shelf Ubiquiti Option Ubiquiti "SDN" Like FW decent enough for homes with 100Mb/s Uplinks but not for homes with 1Gb/s uplinks. USG3 can't handle IPS throughput past 50Mb/s USG3 can't handle FW PPS past 400Mb/s at 100B packets, which is around 500,000 PPS The Ubiquiti alternative would be to spend money on an XG which is well over $1000 USD. DIY Option The best alternative would be to purchase a used SFF PC with at least 1 Gb onboard NIC and 2 PCIe x16 or x 8 lanes. This would allow for 10Gb NIC options 4x10Gb Intel Nics are a steal or 4 x 1Gb Nics which are an even better deal. Going SFP+ is a great option because you can use Copper or Fiber Modules in the same NIC card. Summary The most important part about the SFF Option, you get to use a xeon processor, at least 32 GBs of RAM, and install up to 4 HDDs in the System. You can even install a PCIe NVME or M.2 Sata using a PCIe peripheral. For software, PFSense or Sophos XG will be great options. If you really want to get technical, load up a hypervisor and then install the Firewall as a VM. This would allow you to leverage the SFF system for more than just a FW and allow for easy testing of other types of FW solutions. Hardware Info Intel X722DA4FH Ethernet Network Adapter X722-DA4 https://g.co/kgs/j9aNJz HP Z240 SFF https://g.co/kgs/ax2hwq Firewall OSes PFSense https://www.pfsense.org/ Sophos https://www.sophos.com/en-us/products/next-gen-firewall.aspx OPNSense https://opnsense.org/ View the full article
  21. This episode is Part 6 of the Stardrifter role-playing game playtest. The series is composed of two playtest sessions, held earlier this year. They were recorded and chopped into manageable bites, then edited down into separate episodes. The remaining episodes in this mini-series, including this one, were all from the second session. This series is meant to give listeners some insight into the RPG construction process. Playtesting is not the final step, but rather, just another stage. The construction of an RPG can be convoluted, and feedback from players is absolutely vital. In this part, the characters fly out to the derelict (though hardly empty) spaceship, and find a way to sneak aboard. Special thanks to my playtesters: Thaj, Mark (who was playing Brinn), and X1101! View the full article
  22. Any notes for this episode should probably contain links to the ISPs mentioned in the show. Since I do not wish to harm any listeners, I have opted to not include links to evil ISPs. View the full article
  23. Pluspora is an instance of the Diaspora software that was specifically designed to appeal to users of Google Plus. So when Google Plus disappeared, many people moved over to this platform. https://www.zwilnik.com/?page_id=1027 Links: https://pluspora.com/ https://en.wikipedia.org/wiki/GNU_General_Public_License https://diasporafoundation.org/formatting https://en.wikipedia.org/wiki/Markdown https://www.zwilnik.com/?page_id=1027 View the full article
  24. NEW 'Off The Hook' ONLINE Posted 26 Sep, 2019 5:31:09 UTC The new edition of Off The Hook from 25/09/2019 has been archived and is now available online. "Off The Hook" - 25/09/2019 Download the torrent here!!!! View the full article
  25. Theory In this episode I decided to take a slight diversion into networking fundamentals. As before, if you want to learn more about installing the ONICS tool suite, go back and listen to HPR 2882. There are three key concepts to understand about modern networks. They are: digital - the networks carry bits and bytes (binary digits) packet switched - devices break data into blobs of data called "packets" and take turns sending and receiving those packets to/from other devices attached to the network internetworked -- machines communicate using a protocol that allows traffic to traverse across multiple, independently-managed networks in a uniform way My Setup 2 laptops connected to a home wifi network that has Internet connectivity. Practicing sending data from a source machine to a destination machine. Both are running Linux. Source machine: Wifi interface: wlan0 Ethernet address: 00:22:fa:a7:69:90 IP address: 192.168.0.4 Destination machine Wifi interface: wlo1 Ethernet address: 6c:88:14:7c:2e:14 IP address: 192.168.0.248 Internet Router: Ethernet address: 00:0d:b9:23:f2:51 IP address: 192.168.0.1 More Terminology Address - a number that identifies a machine's interface in a network Packet - a blob of binary data sent as a unit over a network Route - a rule that specifies how to forward traffic to a given address Router / Gateway - a machine that uses the IP protocol and forwards traffic between multiple networks that it connects to Network Protocol - a set of rules and data formats for exchanging information over a network Standard UNIX Commands ifconfig (no arguments or '-a') list interfaces on a machine ifconfig IFNAME list properites about a given interface ping -c 1 IPADDRESS send an echo request to machine IPADDRESS arp -na Dump the Ethernet addresses of known nearby machines netstat -nr Dump the routes in a system netstat -nr | grep "^0.0.0.0" Find the route (and thus IP address) of the default gateway ONICS Commands in this Episode rawpkt - take a blob of data and wrap it in an XPKT format (so other ONICS tools can understand what it is) ethwrap - take an XPKT and prepend an Ethernet header to it ipwrap - take an XPKT and prepend an IP header to it pktin - read a stream of packets from a network interface pflt - filter a stream of packets so that only those matching a pattern get through pktout - send a stream of packets to a network interface x2hpkt - convert XPKTs into a hex dump xpktdump - like x2hpkt, but send the output to a pager like 'less' for easy reading Sending an Ethernet Packet to the Destination On the receiver: $ sudo pktin wlo1 | pflt "not ip and eth.dst == 6c:88:14:7c:2e:14" | x2hpkt On the sender: $ echo "hello world" | rawpkt | ethwrap "eth.dst = 6c:88:14:7c:2e:14; " "eth.src = 00:22:fa:a7:69:90; " "eth.ethtype = 12;" | sudo pktout wlan0 Note that while I broke up the field setting commands into multiple lines in ethwrap, they can all be part of a single quoted string if desired. To store the packet to a file rather than send it instead do something $ echo ... | rawpkt | ethwrap ... > outfile.xpkt One can then dump the packet by running: $ xpktdump outfile.xpkt or send the packet by running: $ sudo pktout outfile.xpkt wlan0 Sending an IP Packet to the Destination over the Local Network On the reciever: $ sudo pktin wlo1 | pflt "ip and ip.proto == 255" | x2hpkt On the sender: $ echo "hello world" | rawpkt | ipwrap "ip.saddr = 192.168.0.4;" "ip.daddr = 192.168.0.248;" "ip.len = 32;" "ip.ttl = 64;" "ip.proto = 255;" | ethwrap "eth.dst = 6c:88:14:7c:2e:14; " "eth.src = 00:22:fa:a7:69:90; " "eth.ethtype = 0x800;" | sudo pktout wlan0 Note that while I broke up the field setting commands into multiple lines in ipwrap and ethwrap, they can all be part of a single quoted string if desired. Also note that it is not actually necessary to set the 'ip.len' and 'eth.ethtype' fields: the tools will do that automatically. Sending an IP Packet to the Destination via IP On the receiver: $ sudo pktin wlo1 | pflt "ip and ip.proto == 255" | x2hpkt One the sender: $ echo "hello world" | rawpkt | ipwrap "ip.saddr = 192.168.0.4;" "ip.daddr = 192.168.0.248;" "ip.ttl = 64;" "ip.proto = 255;" | ethwrap "eth.dst = 00:0d:b9:23:f2:51; " "eth.src = 00:22:fa:a7:69:90; " | sudo pktout wlan0 Challenge There are several differences between the packets that arrive at the destination machine when sending directly over the local network versus sending via an IP gateway (router). I've mentioned how the Ethernet header is different. Can you find the other differences? What causes these differences? TIP: instead of sending the pktin command to x2hpkt, send it to a file. Do this for both local network send and for sending via the router saving each to different files. Then run pdiff on the two files to highlight the differences. View the full article