今日は、梅の産地まではるばると買出しに行き、ついでに温泉に入って来た。さすがに、くたくたなので楽なネタを。

 

Openinidiana は、インストール時にルーターがIPv6利用可能な場合、自動的に接続設定をしてくれる。余計なことは何もしなくてもNetWork Managerに反映される。

 

だがしかし、実際利用をするとなると一手間いる。NetworkManager をパネルから起動して以下の設定をする。

 

 

 

Cloudflare の IPv6 DNSを以下のように設定するだけ。

1.1.1.1,1.0.0.1,

2606:4700:4700::1111,2606:4700:4700::1001

 

ちなみに、IPv6丸裸にならないように、IPv6用のipfilterの設定が必要になる。ま、適当に /etc/ipf/ipf6.conf とでもして

 

#
# ipf6.conf
#
# IP Filter rules to be loaded during startup
#
# See ipf(4) manpage for more information on
# IP Filter rules syntax.

pass out quick on lo0
pass in quick on lo0
# 出パケット許可
pass out quick on e1000g0 proto tcp from any to any port = 9999 keep state
pass out quick on e1000g0 proto udp from any to any port = 53 keep state
pass out quick on e1000g0 proto udp from any to any port = 68 keep state
pass out quick on e1000g0 proto tcp from any to any port = 80 keep state
pass out quick on e1000g0 proto tcp from any to any port = 443 keep state
pass out quick on e1000g0 proto tcp from any to any port = 465 keep state
pass out quick on e1000g0 proto tcp from any to any port = 546 keep state
pass out quick on e1000g0 proto tcp from any to any port = 547 keep state
pass out quick on e1000g0 proto tcp from any to any port = 993 keep state
pass out quick on e1000g0 proto tcp from any to any port = 8080 keep state
pass out quick on e1000g0 proto icmp from any to e1000g0 keep state
#pass out quick on e1000g0 proto tcp from any to 192.168.115.10 keep state

block out log quick on e1000g0 proto tcp/udp all
# block out log quick on e1000g0 proto icmp all
# 入パケット許可
pass in quick on e1000g0 proto icmp from any to any keep state
pass in quick on e1000g0 proto tcp from any to any
#pass in quick on e1000g0 proto udp from any to any port = 68 keep state
pass in quick on e1000g0 proto udp from any to any port = 546 keep state
pass in quick on e1000g0 proto udp from any to any port = 547 keep state


block in log quick on e1000g0 from ::/96 to any
block in log quick on e1000g0 from ::ffff:0:0/96 to any
block in log quick on e1000g0 from 64:ff9b:1::/48 to any
block in log quick on e1000g0 from 100::/64 to any
block in log quick on e1000g0 from 2001:2::/48 to any
block in log quick on e1000g0 from 2001:db8::/32 to any
block in log quick on e1000g0 from fc00::/7 to any
block in log quick on e1000g0 from fec0::/10 to any
block in log quick on e1000g0 from ff00::/8 to any



block in log quick on e1000g0 all with opt lsrr
block in log quick on e1000g0 all with opt ssrr
block in log quick from any to any with ipopts
block in log quick on e1000g0 proto tcp all with short
block out log quick on e1000g0 proto tcp/udp all
block out log quick on e1000g0 proto icmp all

 

 

何せ適当にでっち上げたので、フィルターはしっかりと見直してください。IPv4はブログを検索すれば出てくるでしょう。

 

これで、結構快速になりました。

今日は、スマホの機種変更に行く予定なので、さらっと。

 

OpenIndiana で Audio CD を CDDB 付きで使いたいと思ったら、どうやってもマウントしてくれない。それでは、対応しているソフトを自力でビルドして入れるしかない。

 

幸い、DEADBeef-1.8.8 が対応していてビルド・インストール出来た。

 

まあ、リッピングはLinuxに任せておいて純粋にCD-Playerとして使えればいいだろうと妥協した。

 

 

CDDBをfreedbtest.dyndns.orgに変更するだけであっさりと動いた。また、VMware 上でどーやって動いたかは改めて書こうと思う。

 

openindiana も 2021.10 はVMware16.2 上では不安定だったが、これも改めて書こうと思う。今は安定している。

 

 

エロゲ壁紙で飾ってあるが一応UNIXデスクトップ。それにしても長い道のりだった。今時、AudioCD + CDDB だから。それにしても、Openindianaは何故仮想ファイルシステムからAudioCDをはずしたのだろう。。。

 

1$ で買った「商用 小学生OS」だから遊んでみた。まず、デスクトップをエロゲに。

 

 

折角だから、ロジスティック差分方程式を可視化する。

//logistic.cpp

// C++
//
#include<stdio.h>
#include<math.h>
#define EDig 4   //Ĵ
#define n 500     //nĴ

void f(double &x, double a);
int count(double X, double a, double **v);
void kround(double &x);
long kdigit(double x);

int main(){
  int num;
  double x0=0.5, *value;
  FILE *datafile;

  if(datafile=fopen("logidata","w")){
    for(int a=1; a<4000; a+=1){
      num=count(x0, a*0.001, &value);
      if(num<51)
          for(int i=0; i<num; i++)
        fprintf(datafile, "%6.4f %6.4f\n",a*0.001, *(value+i));
      //fprintf(datafile, "a=%6.4f %d\n", a*0.001, count(x0, a*0.001, &value));
    }
  }
 
  fclose(datafile);
 
  return 0;
}

int count(double X, double a, double **v){ // ʬ
  int i, flag=0;
  double x=X, ex[n];
 
  for(int k=0; k<150; k++){
    f(x, a);
    kround(x);
  }
 
  ex[0]=x;
 
  for(i=1; i<=n; i++){
    f(x, a);
    kround(x);
 
    for(int j=0;j<i;j++)
      if(kdigit(x)==kdigit(ex[j])){
    flag=1; break;
      }
 
    if(flag==1) break;
    ex[i]=x;
  }
 
  *v=ex;    // ʬ
  return i;
}

long kdigit(double x){ //ͭ
  return (long)(x*pow(10,EDig));
}

void kround(double &x){ //ͭ
  int tmp;

  tmp=(int)(x*pow(10,EDig));
  x=(double)tmp/pow(10,EDig);
}

void f(double &x, double a){
  double xn=x;

  x=a*(xn-xn*xn);
}

$ g++ -o ligi logistic.cpp

$ ./logi

$ gnuplot

 

plot "logidata"

 

 

典型的なカオスのアトラクタ。暇ならば、調べてみると面白いと思う。1$分は取り返せたかな。随分前に作ったトイプログラムなので文字コードがUTF8じゃなかった。nkf で無理に持ってきたがちゃんと動いたから結果オーライ。

elementaryos-6.1をインストール後、Ubuntuベースなので一応のことは出来るようになった。がしかし、哲学とやらで使いづらい。

 

 

 

勘弁して欲しい。まあ、これでは教育現場でも使えないだろう。名前の通り小学生に使わせるほかあるまい。結局、デスクトップはこうなった。

 

まず、デフォルトのアプリはほとんど使い物にならなかった。MacOSの足元にも及ばない。エライものを買った。

VMware 16.2 に、elementaryos-6.1 をインストールした。えらい目いあった。

 

【Tips】超難関?「elementary OS 6 Odin」を仮想環境にインストールする方法 | ソフトアンテナ (softantenna.com)

 

まず、仮想環境へのインストールは止めた方が良い。意地でインストールしたが後悔している。

 

どうしてもという方には、空のディスクを作って、最初はデモから入ってインストール。その時、全ての言語設定は US English のデフォルトで行うこと。でないと、システム設定70%で止まる憂き目にあう。

 

一応、記念撮影。

 

 

もう一度言うが止めた方が良い。仮にも有料OSだ。1$で買ったとしても。最低だった。