-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HHC00137E Error opening TUN/TAP device C8-5B-76-A5-4A-B3: No such file or directory #695
Comments
Please see our "SUBMITTING PROBLEM REPORTS" web page. It explains the information that we need (require) in order to properly diagnose such issues. In this particular specific case, that would be:
Knowing what guest operating system you're trying to run under Hercules would also be nice (z/OS? Which version?), as well as seeing its corresponding network configuration members too (e.g. TCPPARMS PROF2), would also be nice. |
How did you start Hercules? Did you use HercGUI? Or did you start it yourself from the command line (i.e. Command Prompt window)? If you started it yourself from the command line, did you start it from an elevated (administrator) Command Prompt window? (i.e. did you right-click on the windows Start Menu entry for "Command Prompt" and select "Run as administrator?") Which If the second (warning) message is being issued, then that's your problem: you're not running Hercules in elevated (administrator) mode. Hercules must be run with admin/root privileges if your guest needs networking capabilities. This need is clearly mentioned in our documentation. Otherwise, if the first (informational) message is being issued, then something else is wrong and we will have to investigate further. |
I start Hercules using Administrator level from the command line. |
I have added Here is the Hercules log with "
|
Hercules.cnf with "0E20.2 CTCI 192.168.137.121 0.0.0.0 -n 192.168.137.254" |
Try to fix my problem, I have modified my configuration to use OSD and now I go further... In my Hercules.conf => My TCPIP configuration:
VTAM definition for PORTA:
When I IPL my zOS 3.1 system, I start TCPIP and I get:
Hercules log: 08:56:04 HHC03806E 0:0401 QETH: : Cannot register guest IP address 192.168.137.122 08:56:04 HHC00007I Previous message from function 'register_ipv4' at qeth.c(693) 08:56:04 HHC03991D 0:0400 QETH: RRH_TYPE_IPA: IPA_CMD_SETIP (IPv4): Response 08:56:04 HHC03981D 0:0400 QETH: TH : +0000> 00E00000 0000000E 00000014 00000060 ...............` .\.............- 08:56:04 HHC03981D 0:0400 QETH: TH : +0010> 0FFC0001 .... .... 08:56:04 HHC03981D 0:0400 QETH: RRH: +0000> 00000000 C17E0001 00000000 00000000 .....~.......... ....A=.......... 08:56:04 HHC03981D 0:0400 QETH: RRH: +0010> 00240020 00002005 0001010B 00000000 .$. .. ......... ................ 08:56:04 HHC03981D 0:0400 QETH: RRH: +0020> 00000000 .... .... 08:56:04 HHC03981D 0:0400 QETH: PH : +0000> 01000020 00000040 ... ...@ ....... 08:56:04 HHC03981D 0:0400 QETH: IPA: +0000> B1000008 E0060100 01010004 00001571 ...............q ....\........... 08:56:04 HHC03981D 0:0400 QETH: IPA: +0010> 00000451 ...Q .... 08:56:04 HHC03981D 0:0400 QETH: Cmd: +0000> C0A8897A FFFFFF00 00000000 ...z........ {yi:........ 08:56:04 HHC03991D 0:0401 QETH: RRH_TYPE_ULP: PUK_TYPE_DISABLE (ULP_DISABLE): Request 08:56:04 HHC03981D 0:0401 QETH: TH : +0000< 00E00000 0000000F 00000014 00000055 ...............U .\.............. 08:56:04 HHC03981D 0:0401 QETH: TH : +0010< 10000001 .... .... 08:56:04 HHC03981D 0:0401 QETH: RRH: +0000< 00000000 417E0001 00000004 00000003 ....A~.......... .....=.......... 08:56:04 HHC03981D 0:0401 QETH: RRH: +0010< 00240015 00001505 D8C5E3F3 00000000 .$.............. ........QET3.... 08:56:04 HHC03981D 0:0401 QETH: RRH: +0020< 00000000 .... .... 08:56:04 HHC03981D 0:0401 QETH: PH : +0000< 01000015 00000040 .......@ ....... 08:56:04 HHC03981D 0:0401 QETH: PUK: +0000< 000C4103 00090000 00000000 ..A......... ............ 08:56:04 HHC03981D 0:0401 QETH: PUS: +0000< 00090403 05000101 09 ......... ......... 08:56:04 HHC03991D 0:0402 QETH: Halting data device 08:56:04 HHC03991D 0:0402 QETH: Activate Queues: QDSIG_HALT received 08:56:04 HHC03991D 0:0402 QETH: Activate Queues: Exit 08:56:04 HHC03991D 0:0402 QETH: Data device halted 08:57:48 HHC03991D 0:0401 QETH: RRH_TYPE_CM: PUK_TYPE_TAKEDOWN (CM_TAKEDOWN): Request 08:57:48 HHC03981D 0:0401 QETH: TH : +0000< 00E00000 00000010 00000014 00000055 ...............U .\.............. 08:57:48 HHC03981D 0:0401 QETH: TH : +0010< 10000001 .... .... 08:57:48 HHC03981D 0:0401 QETH: RRH: +0000< 00000000 817E0001 00000000 00000000 .....~.......... ....a=.......... 08:57:48 HHC03981D 0:0401 QETH: RRH: +0010< 00240015 00001505 D8C5E3F1 00000000 .$.............. ........QET1.... 08:57:48 HHC03981D 0:0401 QETH: RRH: +0020< 00000000 .... .... 08:57:48 HHC03981D 0:0401 QETH: PH : +0000< 01000015 00000040 .......@ ....... 08:57:48 HHC03981D 0:0401 QETH: PUK: +0000< 000C4105 00090000 00000000 ..A......... ............ 08:57:48 HHC03981D 0:0401 QETH: PUS: +0000< 00090404 05D8C5E3 F3 ......... .....QET3 08:57:48 HHC03991D 0:0401 QETH: RRH_TYPE_CM: PUK_TYPE_DISABLE (CM_DISABLE): Request 08:57:48 HHC03981D 0:0401 QETH: TH : +0000< 00E00000 00000011 00000014 00000055 ...............U .\.............. 08:57:48 HHC03981D 0:0401 QETH: TH : +0010< 10000001 .... .... 08:57:48 HHC03981D 0:0401 QETH: RRH: +0000< 00000000 817E0001 00000000 00000000 .....~.......... ....a=.......... 08:57:48 HHC03981D 0:0401 QETH: RRH: +0010< 00240015 00001505 D8C5E3F1 00000000 .$.............. ........QET1.... 08:57:48 HHC03981D 0:0401 QETH: RRH: +0020< 00000000 .... .... 08:57:48 HHC03981D 0:0401 QETH: PH : +0000< 01000015 00000040 .......@ ....... 08:57:48 HHC03981D 0:0401 QETH: PUK: +0000< 000C4103 00090000 00000000 ..A......... ............ 08:57:48 HHC03981D 0:0401 QETH: PUS: +0000< 00090403 05000101 06 ......... ......... 08:57:48 HHC03991D 0:0401 QETH: qeth_halt_or_clear: noop! 08:57:48 HHC03983D 0:0401 QETH: Shutdown Notify 08:57:48 HHC00979D 0:0401 QETH: END: +0000< 0000C000 80000000 ........ ..{..... 08:57:48 HHC03991D 0:0401 QETH: qeth_halt_or_clear: noop! 08:57:51 HHC03991D 0:0400 QETH: Halting read device 08:57:51 HHC03991D 0:0400 QETH: Read device halted |
Trying another coding: 0400.3 QETH iface C8-5B-76-A5-4A-B3 ipaddr 192.168.137.122 netmask 255.255.255.0 chpid F0 debug But exactly same problem => E006 |
Same problem if using OSA or OSD type instead of QETH |
Wherever your (It is recommended that you always specify a log file option.)
Whether you start Hercules in admin mode or not, you should still be able to scroll the Hercules window. That is to say, admin mode does not prevent scrolling. You can always scroll: (Note: normal scrolling is available on all systems. Extended scrolling however, is only available on Windows.) Whether you will be able to scroll up all the way to the very beginning (i.e. back to to the very first message that Hercules issued) or not, depends on how many messages Hercules has issued thus far. Hercules only maintains (only keeps) a 1MB buffer of recently issued messages. If there have been more than 1MB of messages issued, then the buffer "wraps around" and the older messages are overlaid with new messages. But that is SOLELY for scrolling from the Hercules window (panel). The Hercules LOG file is completely different. The Hercules log file always contains ALL messages that Hercules has ever issued. It is a simple text that Hercules continuously writes to as it runs. It is the Hercules LOG file that I need to see, not the screen messages. |
FYI: You do not need to paste the contents of your files in your response. GitHub allows you to upload (attach) files to your comment/response: I would like to see your entire configuration file please. |
You still have not told me what guest you are trying to run. It is z/OS? What version of z/OS? Is it z/OS 3.1? |
I plan to run z/OS 3.1 & z/VM 7.3 |
Main problem now is:
When TCPIP is starting OSD interface generating in Hercules log: 08:56:04 HHC03806E 0:0401 QETH: : Cannot register guest IP address 192.168.137.122 08:56:04 HHC00007I Previous message from function 'register_ipv4' at qeth.c(693) See above posts. |
Please forgive me, but I do not know much about z/OS. I am skilled at Hercules, but I am not skilled at every operating system that Hercules is able to run! (There are simply too many operating systems in existence for me to be an expert at each one!) With that said, here is my own Please notice three things: 1, I am using I also had to modify several other (Notice that I changed the THE BOTTOM LINE IS... Your problem appears likely be a guest operating system (i.e. z/OS) configuration error, and likely not a problem with Hercules. MAYBE. Examining Hercules's I do not know why it was failing when LCS devices were being used. I haven't tried using LCS devices in many years. I know LCS devices worked just fine in earlier versions of z/OS, but it might be that modern (current) versions of z/OS not longer support CTCI or LCS devices? Maybe modern versions of z/OS now only support OSA devices? I don't know! As I said, I am not skilled at z/OS. I am only skilled(?) at Hercules. I hope that helps! |
I use now QETH and not LCS anymore. |
FYI:
So it looks like, starting with z/OS 3.1, you must use only OSA devices. That explains why your original attempt was failing. |
I still use Windows 7, and it works just fine, both natively as well as a guest under z/VM. I do have both Windows 10 and Windows 11 installed as VMware virtual machines. But since they both run as absolute pigs (PAINFULLY slow!), (but then maybe it's VMware causing that?), I rarely -- if ever -- use them. But I honestly don't see why they wouldn't work there too. I'll give it a try when I find the time. But whether it works or not on Windows 11, that would still be a Windows problem, not a Hercules problem. I can only help resolve Hercules problems. |
I tried to setup my Win11 virtual machine to IPL z/OS 3.1, but unfortunately I could not. Apparently my version of VMware has some limit regarding the size that the files can be when copying over files from the host to the guest (and as we all know, some z/OS dasds can be quite large, even when using compressed dasd). Basically, it kept issuing a completely worthless error dialog saying, effectively, "Something went wrong". It would only do this on the largest dasds (several GB). Other dasds (and shadow files) less than. say 1GB, would copy over just fine. So I was unable to create and IPLable z/OS 3.1 system on my Windows 11 VMware virtual machine to test whether there are any issues with Hercules/CTCI-WIN and Windows 11 with respect to QETH (OSA) devices. Sorry! But I saw your question posted to the Hercules forum "Who is using Hercules with QETH (OSA QDIO) network connectivity on Windows 11?", and noticed that:
So I can only conclude from this that it must be something unusual about your particular Windows 11 system that is causing your problem. What it is, I don't know. I wouldn't know where to even begin! But since it has been pretty much proven that the problem is NOT a Hercules related issue (or, for that matter, a CTCI-WIN related issue either), there is nothing more I can do for you. I'm afraid you're on your own for this one, prenard. Sorry! Closing as "Unknown" and "WON'T FIX". |
With Windows 11 - French: C:\Users\patri>echo %time% |
Hercules configuration on Windows 11 French: hercules.cnf.txt |
For information: Same z/OS 3.1 TCPIP configuration works on Uduntu 24-10 / Hercules 4.8-DEV with QETH So, it is really a problem of implementation on Windows 11 / CTCI-Win |
Hi prenard, I'm having a similar issue trying to configure a QETH device on linux system using a tap link. Are you using a TAP or a TUN? Can you show me the DEVICE statement that you used on your hercules configuration file? Thanks |
The Hercules config used by prenard was attached by him to this issue a couple of days ago. However, whether QETH uses a TUN or a TAP interface is controlled by the Hercules guest, the Hercules config has no influence. |
He attached the one he used in windows and it's not working. I've asked the one he used on linux where he said that it's working. On linux, you have to configure tun0 or tap0 on hercules config. I'm trying to use as a tap0 device but it's not working. I can't find any example on internet about the using of tap0. |
As I said, whether a TUN or a TAP interface is used with QETH depends on the guest operating system running under Hercules. If the guest is z/OS -type system a TUN interface must be used, other guest types might use TUN or TAP interfaces depending on the guests configuration. Perhaps if you were to provide a description of what's "not working", and attach your complete Hercules config and the complete Hercules log showing that "it's not working", we might know what help to provide. |
On Windows 11 with Hercules 4.8-DEV, I found in the log:
Maybe it is the cause of message?:
|
I certainly didn't intend to close this issue! |
As requested, I have switched my Windows 11 from French to English US language - but still the same problem:
What is really weird is that this mac address is found by TTTest! |
Thank you for doing that, Patrick! Much appreciated. We now know the chosen host o/s language is definitely not the cause.
YES! I noticed that myself last week, and even mentioned it in one of my comments: |
What is the meaning of "Win32 porting error:"? WIN32 to WIN64 program migration? |
WRONG! I failed to look closely enough at the log. The "porting error" "mixed set(s)" error is being issued well after the original CreateInterface "no such file or directory" error. It is the CreateInterface error that is at the root of our problem. If you look at the log, the CreateInterface error occurs, and then everything falls apart afterwards. So we need to be careful to ignore any errors we might see later on in the log file, as they are almost certainly being caused as a result of the original CreateInterface error. |
No, It simply means that a socket function was called with a non-socket file descriptor. On Windows, sockets are treated very differently from regular file descriptors, and you can't mix the two. If you call a file function, the file descriptor you pass it must be a bona fide file descriptor object. Same with sockets. When you call a socket (WinSock) function, the object that you pass it must be a socket object, not a file descriptor object. On Linux however, they are both the same. They are all just file descriptors. There is no difference between a file descriptor for a disk file and a file descriptor for a network link. Thus, on Linux, it is perfectly legal for the "fdset" in a "select" call to contain file descriptors for disk files AND/OR file descriptors for socket connections. On Windows however, you can't do that. On Windows, when you call the "select" function -- which is a socket networking function -- all of the file descriptors in your "fdset", must ALL be socket type file descriptors. If Hercules detects any non-socket file descriptors in any of its sets being used in a "select" call, it throws the "mixed set(s)" error that you are seeing. It's called a "Win32 porting error" because Hercules was originally written for Linux, not Windows, and the effort to make it run on Windows too, involved a lot of "porting" effort in certain areas. |
Thanks Fish. Do I really need to create a registery entry
pointing to IP or MAC address of Ethernet interface? TTTest does not need it. So, It is not clear to me, if I really have to define it... |
How Hercules knows that it is running on Linux or Windows? I used Hercules-Helper to compile Hercules 4.8-DEV on Windows 11. Does Hercules-Helper support Windows 11? Perhaps, I did something wrong... And Hercules does not know that it is running on Windows when it has to use CTCI-WIN... |
My Windows 11 version is 24H2 PS C:\Users\patri> (Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").displayversion |
No. If |
By how it is built. When you build Hercules, you tell it which operating system you are building it for. You tell it specifically which operating system is your intended "target" operating system (i.e. on which operating system you expect your executable to be run on). |
Absolutely! |
Nope. You did nothing wrong. WE did something wrong, not you. (And by "we" I mean me!) There is a known bug in CTCI-WIN that I am actively trying to find and fix, which I believe is causing your problem. It is going to take me a "while" (short while? long while? Unknown!) to locate the bug and get it fixed, but rest assured I am working on it as fast as I can! In the mean time, it looks like you are unfortunately not going to be able to use networking on your Hercules on Windows. I am truly sorry about that. As soon as I find and fix my bug, I will let you know, and will send you the fix. |
Thanks Fish. In parallel, I try to implement my configuration on Ubuntu 24-10, but I have another problem. So I tried to defined 4 QETH tun devices to connect 4 systems and I have a strange result: first 2 tun devices are working ok but when I try to use the 3rd one, Hercules crashes with an "out of bound" message... I wonder if Hercules supports more than 2 QETH tun devices... I think that I read in a post that it only supports 2. Can you confirm? If so, I will have to use a z/VM configuration with VSWITCH. Thanks for your help. |
Yes, Hercules supports more than 2 QETH tun devices. In the past I have run a VM system on Linux with a half dozen or more QETH's, each one attached to a different guest virtual machine. These days the system is down to only 4 QETH's. So, as always, can we see the Hercules config and log file, please? And when you say "crashes", do you mean a dump is produced? |
Hello.
I am using Hercules 4.8-DEV on Windows 11 and I try to implement network connectivity using CTCI-WIN.
I have added in my Hercules.conf following lines:
And I get during start of Hercules:
I have tested the same configuration with TT64Test.exe and ping tests work without any problem!
Carte Ethernet Ethernet:
Any help would be appreciated.
Thanks.
The text was updated successfully, but these errors were encountered: