Surprising Revelation about the Apache Listening IPs

One of the details in my Apache configuration which I had placed emphasis on, was that this Web-server is supposed to listen on all IPv4 as well as all IPv6 interfaces, on the host-machine I name ‘Phoenix’. And so in the configuration file ‘/etc/apache2/ports.conf‘, I have set up so:

 


# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default.conf

Listen 80

<IfModule ssl_module>
        Listen 443
</IfModule>

<IfModule mod_gnutls.c>
        Listen 443
</IfModule>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet


 

And, in the file ‘sites-enabled/000-default.conf‘ I have stated:

 


<VirtualHost *:80>
        # The ServerName directive sets the request scheme, hostname and port that
        # the server uses to identify itself. This is used when creating
        # redirection URLs. In the context of virtual hosts, the ServerName
        # specifies what hostname must appear in the request's Host: header to
        # match this virtual host. For the default virtual host (this file) this
        # value is not decisive as it is used as a last resort host regardless.
        # However, you must set it for any further virtual host explicitly.
        #ServerName www.example.com

        ServerAdmin admin@dirkmittler.homeip.net


 

But, when I run the command ‘netstat‘, what that command seems to reveal is:

 


dirk@Phoenix:~$ netstat -l --tcp --numeric | grep 80
tcp6       0      0 :::80                   :::*                    LISTEN
dirk@Phoenix:~$ netstat -l --tcp --numeric | grep 443
tcp6       0      0 :::443                  :::*                    LISTEN
dirk@Phoenix:~$


 

What I expect to see, is instead:

 


dirk@Phoenix:~$ netstat -l --tcp --numeric | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN
tcp6       0      0 :::80                   :::*                    LISTEN
dirk@Phoenix:~$ netstat -l --tcp --numeric | grep 443
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN
tcp6       0      0 :::443                  :::*                    LISTEN
dirk@Phoenix:~$


 

Yet, contrarily to what catastrophic expectations might suggest, I find that my site is accessible to IPv4 addresses to begin with. Not only that, but I routinely use the internal, IPv4 loopback-address, and the URL:

 



http://127.0.1.1/blog/


 

To access my own blog. The surprising fact about this setup, is that it still works, and I could come up with some creative ideas, about why this has been working all along.

  • The router could be forwarding all the IPv4 traffic from the WAN, to a LAN-specific IPv6 address belonging to my host-machine,
  • The way the kernel works could be such, that if any server is listening on ‘:::80‘, it is also automatically listening on ‘0.0.0.0:80‘.

My actual router settings only show my host as having an IPv4, LAN address.

I don’t understand it, but as long as this has not been creating any malfunctions, I’m not going to dig deeper into the subject for now. If indeed, my server was no longer listening on any IPv4 WAN addresses, I would have obtained notifications to that effect by now.

Dirk

(Edit : )

This has just been confirmed as the standard behavior of Apache (to use just one socket), as described in this external BB posting.

 

Samsung Galaxy S6 Phone System Update Today

My Samsung Galaxy S6 smartphone was running Android 6.0.1 until today, when the notification reached me, that a System Update was available.

So once I got home, I eagerly installed that, and my phone is now running Android 7.0 – which is also known as Nougat.

I am impressed with this, even though the main feature I see is the screen layout. Obviously, there is more to Android Nougat than that. But, while it seems at first glance that everything worked as planned, I cannot honestly claim that everything is in fact 100%, because I haven’t had the time to test many of the new features yet.

For the moment, I’d say that the update was a success.

There was one detail which I specifically did check. One of the usage habits with which I’ve used Marshmallow and Nougat in the past, was to white-list some of my apps, from Battery Optimization. The reason I need to do this, is my desire to allow some of these apps to run in the background, even though I may not be making any foreground use of them. And, these apps are often older, in that their devs have not adapted them to the newer ways of allowing this to happen. Since modern Android aggressively kills apps that fit this description, my devices have white-lists of apps that should not be killed.

What I did expect is that the update to 7.0 would roll back all my personal white-lists. But I still want them. If the app is too outdated to run on 6.0.1 correctly, then it will probably also be too outdated to run on 7.0 correctly.

It took me a few tries, to find where I can do this.

One of the things which Samsung has done with this update, is to design a UI which is user-friendlier, and also more different from Stock Android, than earlier Samsung versions were. And this means that if I want to find something advanced, I need to poke around in the new settings menu a bit.

I have restored my own preference, that my phone is to have a more extensive white-list, for Battery Optimization, than I feel the Tablet should have. And this relates to the fact that while I do want my phone to send me my many notifications, there is little use if the same notifications are always sounding on the tablet. Chances are, I’ll have my phone in my shirt-pocket, while I’m sitting in front of my tablet. And then, if I want my tablet-view of something that the phone just notified me about, manually activating the corresponding app on the tablet works just fine.

I think that any data-miners might get confused by my habits, of inviting many notifications on my phone, but often not tapping on them, to open the corresponding app-pages. But the way I’m set up, the notification text itself usually gives me enough information, that I can just swipe the notification away, and still have a general sense of what’s going on in the world.

Dirk

(Edit 05/20/2017 : )

Continue reading Samsung Galaxy S6 Phone System Update Today

The New Case Fan Has Failed.

According to this posting, my Linux-computer ‘Phoenix’, which is also my Web-server, once had a failed case-fan, and I had replaced it with a new one.

I knew that the old one had failed, both because my desktop widget showed it as only spinning intermittently, and because when I inspected it, with the tower-case open, I could sense with my hand, that the old fan had increased resistance to being turned. I assumed some sort of bearing failure.

The new case-fan did spin at full speed correctly, for some time.

But in recent days, I find that the new case-fan has failed again. I really have no explanation for this, but my widget now shows its RPMs doing the same thing they were doing, for the old case-fan, sometimes spinning, and sometimes stalled.

Now, I could undertake simply to replace it again, with a 3rd fan. But since the first repair did not work, I have no reason to assume that replacing the case-fan again would work. And so I am left pondering, what I should do.

Dirk

(Edit 05/20/2017 : )

Continue reading The New Case Fan Has Failed.

Pixel C Crash Yesterday Night

Yesterday evening, my new Pixel C Tablet did something for the first time, which was ominous. Its screen just went dark, and then started to display the logo, which it displays during a restart. It followed through with a successful restart.

Some people mistakenly think that this behavior is a reboot. If we were to call it that, then this behavior would need to be called a Hard Boot – as opposed to a Soft Boot, which happens when the user shuts the tablet down from the software-side, in telling it to reboot. In fact, a Hard Boot would be happening when the user uses the power-button to force a Hard Boot, and would have an explanation in that.

In reality, what the tablet did was a spontaneous reset. This type of event is also a File System Event, as the File System was never unmounted. Hence, the tablet also needed to repair its file system when it booted anew.

But, there are certain safety-factors built into how any serious O/S works, and built into how any file system works. So in most cases, the repair to the file system succeeds.

The fact that this has happened to a brand-new tablet, causes me to question how (un)stable it might really be. I’ve only had this tablet for a few short months now.

One of the features of how this happens, which is even less reassuring, is that after the reset, there is nothing displayed in the user interface, which betrays the fact that the reset happened. What this means is that in theory, this could be happening every night as I sleep, even while the tablet is charging, because by the next morning, there would be nothing displayed, to betray the fact that it has happened.

It just happens to have taken place once now, while I was sitting in front of it.

Dirk

(Edit : )

I should add, that this tablet is running the May 5 patch of Android 7.1.2 .