Category Archives: Server Information

WordPress suckiness

Well, in making yesterday’s post, I encountered a wordpress error when I wanted to edit the post.  It would give me a ‘critical error‘.  However, it would only give that error for yesterday’s posting.  If I tried editing a previous post, either without embedded graphics, or with, it worked fine.

I tracked it down to an issue with WP User Manager plugin that I use for various system settings.  If I temporarily disabled it, I could edit yesterday’s post fine.  So, after I did, I re-enabled that plugin.

I may have to look into upgrading the main blog version, as I have 5.3.2 installed, and I believe 5.7.2 is available.  However, that can wait for awhile, I think.  But, this issue is most definitely worth remembering.

Issues with servers

With every upgrade paths there are bound to be hiccups.  Yesterday, the power company disrupted my service for an hour or so to replace a pole.  Unfortunately, only the ONT power supply was on the UPS, and the fiber router was not.  I have a fairly stout UPS that will keep up my two main servers, and various other items a couple hours or so.

Well, the only thing that should have happened would be a connectivity disruption. I am business class with a static IP address, and when everything came back up together, it gave me a dynamic IP address.  Spent awhile on the phone today with Frontier, and a tech has to come by.  They think the router is defective and not maintaining static connection versus dynamic.

The nice part about business class, is that calling them, you usually get connected almost immediately.  Another nice thing is my tech visit appointment to replace the router is TOMORROW.  😉

So, for the moment, the krabradio.net domain still points to the IP that is supposed to be my static address.  I have set crabradio.net to the current dynamic address.  That should hold things until tomorrow.  After the router issue gets taken care of, I shall point all domains back to the static IP.  For now, webpages (to include blogs), ftp, icecast stream, ssh, etc should all be working fine.  Unfortunately, the ircd won’t be working until this matter is resolved.

P.S.  Besides, the servers, now the ONT power supply and the fiber router are both on the UPS. 😉

Thanks for your patience.

<the management>

Internet Upgrade

Well, it’s been a long wait, but I finally ditched the business class dsl with static IP address for business class fiber with a static IP.  Now, ftp users shouldn’t have to throttle their connection speed so that my connection wouldn’t saturate.  My connection is symetrical, so I have lots of headroom.  The amazing thing is, that the static ADSL was costing me $130/month, and the fiber will only cost me $60/month.  That’s a win.

I had a fairly custom set up.  A Dlink ADSL bridged modem, and a pair of DD-WRT flashed linux based linksys routers.  One was the main router, and the other a wireless bridge.  As usual, the private IP numbers were in the 192.168.1.1 address block.  Everything was under that range, with many IP addresses static.  Servers, security servers, security cameras, printers, Kodi android tv box, etc.  Other items, such as wifi lightbulbs, were handled by the main router’s DHCP server.

So, the installer that showed up was just that: an installer.  He knew very little about networking or anything besides getting the fiber router up and running so that computers, etc could get the internet.  Pretty much okay for a residential customer, but not so much for a business customer.

So, I decided that the easiest way to get everything working was to keep the wifi lights, cameras, camera servers, etc on the linksys infrastructure.  So, I moved the two main publicly accessible servers to the new arris fiber router, and set up the intial port forwards for services.  However, there was something that had to be dealt with first.  The arris router comes set to 192.168.254.254, which won’t talk to the 192.168.1.1 block.

I could have simply changed the netmasks from 255.255.255.0 to 255.255.0.0 making it a class B network.  However, I would prefer having just a class C private network.

So, I changed the arris router to 192.168.1.1, and the main linkys infrastructure router to 192.168.1.3, since 192.168.1.2 was taken by the wireless bridge.  I then hooked that to the arris router just like an extension switch, by connecting the eth ports together.  (Not the linksys WAN port)

I went through the arris configure pages to set it all up, including the SSID and password of the wireless interface.  The only wierd thing is that for a couple laptops (most were fine), they wouldn’t properly pick up the gateway, so connections were borked.  Solved this easily by setting the laptop’s connection to ‘static’ and manually entered in 192.168.1.1 for the gateway and dns.  I really don’t perceive that as a problem, and may be an issue with the arris router.  In a few days, I’ll try to hook a wireless access point to the arris, to see if that fixes it.  I really don’t think I’ll lose much sleep over it.

Moral of this story:  If you are a business class customer of your ISP and you choose an upgrade like this, you better know what you are doing network-wise.  Or, enlist the help of someone like me.  😉

Fixing borked AJAX Chat

A little while ago,  both the AJAX Chat servers, the main one on Quackhouse Radio server, as well as the backup on the KRAB radio server crapped out.  I’ll fill you in how I fixed it, as well as the symptom.

The symptom was that if a connected user just closed their browser instead of using the LOGOUT button, the chat server would crash, and the next person to try to log in, would get something like this in their browser:

Query: INSERT INTO `AJAXChat`.ajax_chat_messages( userID, userName, userRole, channel, dateTime, ip, text ) VALUES ( ‘5150515051’, ‘[KRAB]’, ‘4’, ‘0’, NOW(), ‘��’, ‘/logout Cap Timeout’ ); Error-Report: Out of range value for column ‘userID’ at row 1 Error-Code: 1264

Pretty much undecipherable, unless you are a linux sql geek like I am.  😀 The way to get past this would be to use install.php to reinitialize the database tables.  However, the next time a user fails to log out properly, the same thing happens.  Here’s how I fixed the backup server.

It can be done using the command line, but the easiest way is using phpMyAdmin.  So, if you don’t have it, you must install it.  It is set by default to only allow connections from localhost, so keep that in mind.

First thing to do is to either Remove or Rename the AJAXChat database.  Login to phpMyAdmin and click on the AJAXChat database, then select Operations.  Then, either Remove, or Rename it.  I chose to Rename it rather that Remove it.  I can always Remove it later.

Second thing to do, is to add a new user and top level database.  Click on New (on the left), then User Accounts.  Click on Add User Account.  Type the access info you want in the Login information area. (username, host, password.)  FYI, the host should be localhost. 😉  Then click on the radio button for Create database with the same name and grant all privileges.  Then, click Go.

Finally, you need to go to the config.php script in the AJAXChat lib directory,  and open it in your editor.  I prefer to use nano, but you can use ed, vim, or a host of others.  Then, you need to update the config.php.  You will need to update the user, password, and database name that you just set up.

Then, you just need to rerun the install.php, it it will recreate everything automatically.

Now, the only time you should end up with that sql garbage when trying to login to AJAXChat, is if that login is currently logged in…. 😉

That’s it!  With luck, that will take care of your issue.